forgeant docs-test-0
Build LLM-powered agents in C++
Loading...
Searching...
No Matches
openai.hpp
Go to the documentation of this file.
1#ifndef FORGEANT_PROVIDER_OPENAI_HPP
2#define FORGEANT_PROVIDER_OPENAI_HPP
3
7
8namespace forgeant {
9
11 public:
13
14 LlmResponse chat(const Conversation& conversation, const ChatRequest& request = {}) override;
15
16 private:
17 HttpClient& client_;
18 ProviderConfig config_;
19
20 static constexpr const char* DEFAULT_BASE_URL = "https://api.openai.com";
21
22 [[nodiscard]] Json serialize_request(const Conversation& conversation,
23 const ChatRequest& request) const;
24 [[nodiscard]] static LlmResponse deserialize_response(const Json& json);
25 [[nodiscard]] std::string endpoint_url() const;
26 [[nodiscard]] HttpHeaders auth_headers() const;
27};
28
29} // namespace forgeant
30
31#endif // FORGEANT_PROVIDER_OPENAI_HPP
Definition conversation.hpp:12
Definition client.hpp:16
Definition json.hpp:27
Definition provider.hpp:10
Definition openai.hpp:10
OpenAiProvider(HttpClient &client, ProviderConfig config)
LlmResponse chat(const Conversation &conversation, const ChatRequest &request={}) override
Definition agent.hpp:25
std::unordered_map< std::string, std::string > HttpHeaders
Definition client.hpp:13
Definition chat_request.hpp:11
Definition response.hpp:14
Definition config.hpp:9