Zoonk.AI.AIClient.BaseClient (Zoonk v0.1.0-dev)
View SourceBase client functionality for AI service implementations.
This module provides common functionality for making requests to AI services, reducing code duplication across different AI client implementations.
Summary
Functions
Builds messages array from AI payload.
Combines system instructions with user messages.
Examples
iex> BaseClient.build_messages(%AI{instructions: "You are helpful", input: []})
[%{role: "system", content: "You are helpful"}]
Makes a chat completion request to an AI service.
Takes an endpoint URL, payload, and configuration key, then makes the request and handles the response.
Examples
iex> BaseClient.chat_completion("https://api.service.com/chat", payload, :service)
{:ok, %{field: "value"}}