ExBifrost.Api.PydanticAIIntegration (ex_bifrost v0.1.0)

Copy Markdown View Source

API calls for all endpoints tagged PydanticAIIntegration.

Summary

Functions

Create message (PydanticAI - Anthropic format) Creates a message using Anthropic-compatible format via PydanticAI.

Converse with model (PydanticAI - Bedrock format) Sends messages using AWS Bedrock Converse-compatible format via PydanticAI.

Stream converse with model (PydanticAI - Bedrock format) Streams messages using AWS Bedrock Converse-compatible format via PydanticAI.

Chat with model (PydanticAI - Cohere format) Sends a chat request using Cohere-compatible format via PydanticAI.

Create embeddings (PydanticAI - Cohere format) Creates embeddings using Cohere-compatible format via PydanticAI.

Tokenize text (PydanticAI - Cohere format) Tokenizes text using Cohere v1 API format via PydanticAI.

Generate content (PydanticAI - Gemini format) Generates content using Google Gemini-compatible format via PydanticAI.

List models (PydanticAI - Gemini format) Lists available models in Google Gemini API format via PydanticAI.

Stream generate content (PydanticAI - Gemini format) Streams content generation using Google Gemini-compatible format via PydanticAI.

Chat completions (PydanticAI - OpenAI format) Creates a chat completion using OpenAI-compatible format via PydanticAI.

Count input tokens (PydanticAI - OpenAI format) Counts the number of tokens in a Responses API request via PydanticAI.

Create embeddings (PydanticAI - OpenAI format) Creates embeddings using OpenAI-compatible format via PydanticAI.

List models (PydanticAI - OpenAI format) Lists available models using OpenAI-compatible format via PydanticAI.

Create response (PydanticAI - OpenAI Responses API) Creates a response using OpenAI Responses API format via PydanticAI. Supports streaming via SSE.

Create speech (PydanticAI - OpenAI TTS) Generates audio from text using OpenAI TTS via PydanticAI.

Text completions (PydanticAI - OpenAI format) Creates a text completion using OpenAI-compatible format via PydanticAI. This is the legacy completions API.

Create transcription (PydanticAI - OpenAI Whisper) Transcribes audio into text using OpenAI Whisper via PydanticAI.

Functions

pydanticai_anthropic_messages(connection, anthropic_message_request, opts \\ [])

Create message (PydanticAI - Anthropic format) Creates a message using Anthropic-compatible format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • anthropic_message_request (AnthropicMessageRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.AnthropicMessageResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_bedrock_converse(connection, model_id, bedrock_converse_request, opts \\ [])

Converse with model (PydanticAI - Bedrock format) Sends messages using AWS Bedrock Converse-compatible format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • model_id (String.t): Model ID
  • bedrock_converse_request (BedrockConverseRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.BedrockConverseResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_bedrock_converse_stream(connection, model_id, bedrock_converse_request, opts \\ [])

Stream converse with model (PydanticAI - Bedrock format) Streams messages using AWS Bedrock Converse-compatible format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • model_id (String.t): Model ID
  • bedrock_converse_request (BedrockConverseRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.BedrockConverseStream200Response.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_cohere_chat(connection, cohere_chat_request, opts \\ [])

Chat with model (PydanticAI - Cohere format) Sends a chat request using Cohere-compatible format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • cohere_chat_request (CohereChatRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.CohereChatResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_cohere_embed(connection, cohere_embedding_request, opts \\ [])

Create embeddings (PydanticAI - Cohere format) Creates embeddings using Cohere-compatible format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • cohere_embedding_request (CohereEmbeddingRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.CohereEmbeddingResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_cohere_tokenize(connection, cohere_count_tokens_request, opts \\ [])

Tokenize text (PydanticAI - Cohere format) Tokenizes text using Cohere v1 API format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • cohere_count_tokens_request (CohereCountTokensRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.CohereCountTokensResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_gemini_generate_content(connection, model, gemini_generation_request, opts \\ [])

Generate content (PydanticAI - Gemini format) Generates content using Google Gemini-compatible format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • model (String.t): Model name with action
  • gemini_generation_request (GeminiGenerationRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.GeminiGenerationResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_gemini_list_models(connection, opts \\ [])

@spec pydanticai_gemini_list_models(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, ExBifrost.Model.GeminiListModelsResponse.t()}
  | {:ok, ExBifrost.Model.GeminiError.t()}
  | {:error, Tesla.Env.t()}

List models (PydanticAI - Gemini format) Lists available models in Google Gemini API format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • opts (keyword): Optional parameters
    • :pageSize (integer()): Maximum number of models to return
    • :pageToken (String.t): Page token for pagination

Returns

  • {:ok, ExBifrost.Model.GeminiListModelsResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_gemini_stream_generate_content(connection, model, gemini_generation_request, opts \\ [])

@spec pydanticai_gemini_stream_generate_content(
  Tesla.Env.client(),
  String.t(),
  ExBifrost.Model.GeminiGenerationRequest.t(),
  keyword()
) ::
  {:ok, ExBifrost.Model.GeminiError.t()}
  | {:ok, ExBifrost.Model.GeminiGenerationResponse.t()}
  | {:error, Tesla.Env.t()}

Stream generate content (PydanticAI - Gemini format) Streams content generation using Google Gemini-compatible format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • model (String.t): Model name with action
  • gemini_generation_request (GeminiGenerationRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.GeminiGenerationResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_open_ai_chat_completions(connection, open_ai_chat_request, opts \\ [])

@spec pydanticai_open_ai_chat_completions(
  Tesla.Env.client(),
  ExBifrost.Model.OpenAiChatRequest.t(),
  keyword()
) ::
  {:ok, ExBifrost.Model.ChatCompletionResponse.t()}
  | {:ok, ExBifrost.Model.BifrostError.t()}
  | {:error, Tesla.Env.t()}

Chat completions (PydanticAI - OpenAI format) Creates a chat completion using OpenAI-compatible format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • open_ai_chat_request (OpenAiChatRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.ChatCompletionResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_open_ai_count_input_tokens(connection, open_ai_responses_request, opts \\ [])

@spec pydanticai_open_ai_count_input_tokens(
  Tesla.Env.client(),
  ExBifrost.Model.OpenAiResponsesRequest.t(),
  keyword()
) ::
  {:ok, ExBifrost.Model.BifrostError.t()}
  | {:ok, ExBifrost.Model.CountTokensResponse.t()}
  | {:error, Tesla.Env.t()}

Count input tokens (PydanticAI - OpenAI format) Counts the number of tokens in a Responses API request via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • open_ai_responses_request (OpenAiResponsesRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.CountTokensResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_open_ai_embeddings(connection, open_ai_embedding_request, opts \\ [])

Create embeddings (PydanticAI - OpenAI format) Creates embeddings using OpenAI-compatible format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • open_ai_embedding_request (OpenAiEmbeddingRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.EmbeddingResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_open_ai_list_models(connection, opts \\ [])

@spec pydanticai_open_ai_list_models(
  Tesla.Env.client(),
  keyword()
) ::
  {:ok, ExBifrost.Model.OpenAiListModelsResponse.t()}
  | {:ok, ExBifrost.Model.BifrostError.t()}
  | {:error, Tesla.Env.t()}

List models (PydanticAI - OpenAI format) Lists available models using OpenAI-compatible format via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.OpenAiListModelsResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_open_ai_responses(connection, open_ai_responses_request, opts \\ [])

Create response (PydanticAI - OpenAI Responses API) Creates a response using OpenAI Responses API format via PydanticAI. Supports streaming via SSE.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • open_ai_responses_request (OpenAiResponsesRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.ResponsesResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_open_ai_speech(connection, open_ai_speech_request, opts \\ [])

@spec pydanticai_open_ai_speech(
  Tesla.Env.client(),
  ExBifrost.Model.OpenAiSpeechRequest.t(),
  keyword()
) ::
  {:ok, ExBifrost.Model.BifrostError.t()}
  | {:ok, String.t()}
  | {:error, Tesla.Env.t()}

Create speech (PydanticAI - OpenAI TTS) Generates audio from text using OpenAI TTS via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • open_ai_speech_request (OpenAiSpeechRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, String.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_open_ai_text_completions(connection, open_ai_text_completion_request, opts \\ [])

Text completions (PydanticAI - OpenAI format) Creates a text completion using OpenAI-compatible format via PydanticAI. This is the legacy completions API.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • open_ai_text_completion_request (OpenAiTextCompletionRequest):
  • opts (keyword): Optional parameters

Returns

  • {:ok, ExBifrost.Model.TextCompletionResponse.t} on success
  • {:error, Tesla.Env.t} on failure

pydanticai_open_ai_transcriptions(connection, model, file, opts \\ [])

@spec pydanticai_open_ai_transcriptions(
  Tesla.Env.client(),
  String.t(),
  String.t(),
  keyword()
) ::
  {:ok, ExBifrost.Model.BifrostError.t()}
  | {:ok, ExBifrost.Model.TranscriptionResponse.t()}
  | {:error, Tesla.Env.t()}

Create transcription (PydanticAI - OpenAI Whisper) Transcribes audio into text using OpenAI Whisper via PydanticAI.

Parameters

  • connection (ExBifrost.Connection): Connection to server
  • model (String.t): Model identifier (e.g., whisper-1)
  • file (String.t): Audio file to transcribe
  • opts (keyword): Optional parameters
    • :language (String.t): Language of the audio (ISO 639-1)
    • :prompt (String.t): Prompt to guide transcription
    • :response_format (String.t):
    • :temperature (number()):
    • :timestamp_granularities ([String.t]):
    • :stream (boolean()):
    • :fallbacks ([String.t]):

Returns

  • {:ok, ExBifrost.Model.TranscriptionResponse.t} on success
  • {:error, Tesla.Env.t} on failure