forgeant
docs-test-0
Build LLM-powered agents in C++
Loading...
Searching...
No Matches
message.hpp
Go to the documentation of this file.
1
#ifndef FORGEANT_TYPES_MESSAGE_HPP
2
#define FORGEANT_TYPES_MESSAGE_HPP
3
4
#include <
forgeant/types/content.hpp
>
5
#include <
forgeant/types/role.hpp
>
6
#include <string>
7
#include <vector>
8
9
namespace
forgeant
{
10
11
struct
Message
{
12
Role
role
=
Role::user
;
13
std::vector<ContentBlock>
content
;
14
15
Message
() =
default
;
16
17
Message
(
Role
role
, std::vector<ContentBlock>
content
)
18
:
role
(
role
),
content
(std::move(
content
)) {}
19
20
Message
(
Role
role
, std::string text) :
role
(
role
),
content
{
TextBlock
{std::move(text)}} {}
21
22
bool
operator==
(
const
Message
&)
const
=
default
;
23
};
24
25
void
to_json
(
Json
& j,
const
Message
& msg);
26
void
from_json
(
const
Json
& j,
Message
& msg);
27
28
}
// namespace forgeant
29
30
#endif
// FORGEANT_TYPES_MESSAGE_HPP
forgeant::Json
Definition
json.hpp:27
content.hpp
forgeant
Definition
agent.hpp:25
forgeant::to_json
void to_json(Json &j, const TextBlock &block)
forgeant::from_json
void from_json(const Json &j, TextBlock &block)
forgeant::Role
Role
Definition
role.hpp:9
forgeant::Role::user
@ user
role.hpp
forgeant::Message
Definition
message.hpp:11
forgeant::Message::operator==
bool operator==(const Message &) const =default
forgeant::Message::content
std::vector< ContentBlock > content
Definition
message.hpp:13
forgeant::Message::Message
Message()=default
forgeant::Message::Message
Message(Role role, std::vector< ContentBlock > content)
Definition
message.hpp:17
forgeant::Message::role
Role role
Definition
message.hpp:12
forgeant::Message::Message
Message(Role role, std::string text)
Definition
message.hpp:20
forgeant::TextBlock
Definition
content.hpp:10
include
forgeant
types
message.hpp
Generated by
1.9.8