View Source ExOpenAI.Components.CreateMessageRequest (ex_openai.ex v2.0.0-beta2)
Module for representing the OpenAI schema CreateMessageRequest.
Fields
:attachments- optional -[{:%{}, [], [{{:optional, [], [:file_id]}, {{:., [], [{:__aliases__, [alias: false], [:String]}, :t]}, [], []}}, {{:optional, [], [:tools]}, {:list, [], [{:|, [], [{{:., [], [ExOpenAI.Components.AssistantToolsCode, :t]}, [], []}, {{:., [], [ExOpenAI.Components.AssistantToolsFileSearchTypeOnly, :t]}, [], []}]}]}}]}] | any():content- required -String.t() | [ExOpenAI.Components.MessageContentImageFileObject.t() | ExOpenAI.Components.MessageContentImageUrlObject.t() | ExOpenAI.Components.MessageRequestContentTextObject.t()]:metadata- optional -ExOpenAI.Components.Metadata.t():role- required -:user | :assistant
The role of the entity that is creating the message. Allowed values include:
user: Indicates the message is sent by an actual user and should be used in most cases to represent user-generated messages.assistant: Indicates the message is generated by the assistant. Use this value to insert messages from the assistant into the conversation.
Allowed values:"user","assistant"
Summary
Types
@type t() :: %ExOpenAI.Components.CreateMessageRequest{ attachments: ([ %{ optional(:file_id) => String.t(), optional(:tools) => [ ExOpenAI.Components.AssistantToolsCode.t() | ExOpenAI.Components.AssistantToolsFileSearchTypeOnly.t() ] } ] | any()) | nil, content: String.t() | [ (ExOpenAI.Components.MessageContentImageFileObject.t() | ExOpenAI.Components.MessageContentImageUrlObject.t()) | ExOpenAI.Components.MessageRequestContentTextObject.t() ], metadata: ExOpenAI.Components.Metadata.t() | nil, role: :user | :assistant }