View Source ExOpenAi.ChatRequest (ex_open_ai v0.1.3)
Represents a chat request to the OpenAI API.
This module allows you to add a message to the list of messages in the request as well as validate any request to the Chat resource.
examples
Examples
iex> params = %{
...> model: "text-model",
...> messages: [
...> %{content: "hello"}
...> ]
...> }
iex> ExOpenAi.ChatRequest.create(params)
{:ok, %ExOpenAi.Chat{...}}
iex> ExOpenAi.ChatRequest.do_append(params, %{content: "world"})
%{model: "text-model", messages: [%{content: "hello"}, %{content: "world"}]}
Link to this section Summary
Functions
Builds the create chat request and validates the required fields.
Builds the chat messages by appending to the list of messages in the map.
Builds the map by adding to the existing map and updates the map with the attributes passed in.
Ensures that the map has the required fields.
Prepares the map by removing any fields that are not in the list of fields. and ensures required fields are present.
Link to this section Functions
@spec create(params :: map()) :: {:ok, ExOpenAi.Chat.t()} | {:error, map()}
Builds the create chat request and validates the required fields.
Builds the chat messages by appending to the list of messages in the map.
Builds the map by adding to the existing map and updates the map with the attributes passed in.
Ensures that the map has the required fields.
Prepares the map by removing any fields that are not in the list of fields. and ensures required fields are present.