Documentation
¶
Index ¶
- func AnthropicParamOpt[T comparable](value T) param.Opt[T]
- func CleanupOpenaiFields(req *openai.ChatCompletionNewParams)
- func ConvertAnthropicBetaToGoogleRequest(anthropicReq *anthropic.BetaMessageNewParams, defaultMaxTokens int64) (string, []*genai.Content, *genai.GenerateContentConfig)
- func ConvertAnthropicBetaToGoogleToolChoice(tc *anthropic.BetaToolChoiceUnionParam) *genai.ToolConfig
- func ConvertAnthropicBetaToGoogleTools(tools []anthropic.BetaToolUnionParam) []*genai.FunctionDeclaration
- func ConvertAnthropicBetaToOpenAIRequest(anthropicReq *anthropic.BetaMessageNewParams, compatible bool, ...) (*openai.ChatCompletionNewParams, *protocol.OpenAIConfig)
- func ConvertAnthropicBetaToResponsesRequest(anthropicReq *anthropic.BetaMessageNewParams) *responses.ResponseNewParams
- func ConvertAnthropicBetaToolChoiceToOpenAI(tc *anthropic.BetaToolChoiceUnionParam) openai.ChatCompletionToolChoiceOptionUnionParam
- func ConvertAnthropicBetaToolChoiceToResponses(tc *anthropic.BetaToolChoiceUnionParam) responses.ResponseNewParamsToolChoiceUnion
- func ConvertAnthropicBetaToolsToOpenAI(tools []anthropic.BetaToolUnionParam) []openai.ChatCompletionToolUnionParam
- func ConvertAnthropicBetaToolsToOpenAIWithTransformedSchema(tools []anthropic.BetaToolUnionParam) []openai.ChatCompletionToolUnionParam
- func ConvertAnthropicBetaToolsToResponses(tools []anthropic.BetaToolUnionParam) []responses.ToolUnionParam
- func ConvertAnthropicToGoogleRequest(anthropicReq *anthropic.MessageNewParams, defaultMaxTokens int64) (string, []*genai.Content, *genai.GenerateContentConfig)
- func ConvertAnthropicToGoogleToolChoice(tc *anthropic.ToolChoiceUnionParam) *genai.ToolConfig
- func ConvertAnthropicToGoogleTools(tools []anthropic.ToolUnionParam) []*genai.FunctionDeclaration
- func ConvertAnthropicToOpenAIRequest(anthropicReq *anthropic.MessageNewParams, compatible bool, isStreaming bool, ...) (*openai.ChatCompletionNewParams, *protocol.OpenAIConfig)
- func ConvertAnthropicToolChoiceToOpenAI(tc *anthropic.ToolChoiceUnionParam) openai.ChatCompletionToolChoiceOptionUnionParam
- func ConvertAnthropicToolsToOpenAI(tools []anthropic.ToolUnionParam) []openai.ChatCompletionToolUnionParam
- func ConvertAnthropicToolsToOpenAIWithTransformedSchema(tools []anthropic.ToolUnionParam) []openai.ChatCompletionToolUnionParam
- func ConvertAnthropicV1ToBetaRequest(req *anthropic.MessageNewParams) *anthropic.BetaMessageNewParams
- func ConvertAnthropicV1ToBetaRequestWithError(req *anthropic.MessageNewParams) (*anthropic.BetaMessageNewParams, error)
- func ConvertAnthropicV1ToResponsesRequest(anthropicReq *anthropic.MessageNewParams) *responses.ResponseNewParams
- func ConvertAnthropicV1ToolChoiceToResponses(tc *anthropic.ToolChoiceUnionParam) responses.ResponseNewParamsToolChoiceUnion
- func ConvertAnthropicV1ToolsToResponses(tools []anthropic.ToolUnionParam) []responses.ToolUnionParam
- func ConvertBetaContentBlocksToString(blocks []anthropic.BetaContentBlockParamUnion) string
- func ConvertBetaTextBlocksToString(blocks []anthropic.BetaTextBlockParam) string
- func ConvertChatMessagesToResponsesInput(messages []openai.ChatCompletionMessageParamUnion) responses.ResponseInputParam
- func ConvertChatToOpenAIResponses(params *openai.ChatCompletionNewParams, defaultMaxTokens int64) *responses.ResponseNewParams
- func ConvertChatToolChoiceToResponsesToolChoice(choice *openai.ChatCompletionToolChoiceOptionUnionParam) responses.ResponseNewParamsToolChoiceUnion
- func ConvertChatToolsToResponsesTools(tools []openai.ChatCompletionToolUnionParam) []responses.ToolUnionParam
- func ConvertContentBlocksToString(blocks []anthropic.ContentBlockParamUnion) string
- func ConvertFunctionCallOutputToChatGPTFormat(output *responses.ResponseInputItemFunctionCallOutputParam) map[string]interface{}
- func ConvertFunctionCallToChatGPTFormat(call *responses.ResponseFunctionToolCallParam) map[string]interface{}
- func ConvertGooglePartsToString(parts []*genai.Part) string
- func ConvertGoogleToAnthropicRequest(model string, contents []*genai.Content, config *genai.GenerateContentConfig) anthropic.MessageNewParams
- func ConvertGoogleToOpenAIRequest(model string, contents []*genai.Content, config *genai.GenerateContentConfig) *openai.ChatCompletionNewParams
- func ConvertGoogleToolChoiceToAnthropic(config *genai.FunctionCallingConfig) anthropic.ToolChoiceUnionParam
- func ConvertGoogleToolChoiceToOpenAI(config *genai.FunctionCallingConfig) openai.ChatCompletionToolChoiceOptionUnionParam
- func ConvertGoogleToolsToAnthropic(funcs []*genai.FunctionDeclaration) []anthropic.ToolUnionParam
- func ConvertGoogleToolsToOpenAI(funcs []*genai.FunctionDeclaration) []openai.ChatCompletionToolUnionParam
- func ConvertOpenAIResponsesToAnthropicBetaRequest(params responses.ResponseNewParams, defaultMaxTokens int64) *anthropic.BetaMessageNewParams
- func ConvertOpenAIResponsesToChat(params *responses.ResponseNewParams, defaultMaxTokens int64) *openai.ChatCompletionNewParams
- func ConvertOpenAIToAnthropicRequest(req *openai.ChatCompletionNewParams, defaultMaxTokens int64) *anthropic.BetaMessageNewParams
- func ConvertOpenAIToAnthropicToolChoice(tc *openai.ChatCompletionToolChoiceOptionUnionParam) anthropic.BetaToolChoiceUnionParam
- func ConvertOpenAIToAnthropicTools(tools []openai.ChatCompletionToolUnionParam) []anthropic.BetaToolUnionParam
- func ConvertOpenAIToGoogleRequest(req *openai.ChatCompletionNewParams, defaultMaxTokens int64) (string, []*genai.Content, *genai.GenerateContentConfig)
- func ConvertOpenAIToGoogleToolChoice(tc *openai.ChatCompletionToolChoiceOptionUnionParam) *genai.ToolConfig
- func ConvertOpenAIToGoogleTools(tools []openai.ChatCompletionToolUnionParam) []*genai.FunctionDeclaration
- func ConvertRawInputToChatGPTFormat(raw map[string]interface{}) []interface{}
- func ConvertResponseInputToChatGPTFormat(inputItems responses.ResponseInputParam) []interface{}
- func ConvertResponseToolChoiceToChatGPTFormat(toolChoice responses.ResponseNewParamsToolChoiceUnion) interface{}
- func ConvertResponseToolsToChatGPTFormat(tools []responses.ToolUnionParam) []interface{}
- func ConvertResponsesInputToMessages(items responses.ResponseInputParam) []openai.ChatCompletionMessageParamUnion
- func ConvertResponsesToolChoiceToAnthropicBeta(tc responses.ResponseNewParamsToolChoiceUnion) anthropic.BetaToolChoiceUnionParam
- func ConvertResponsesToolChoiceToChat(choice responses.ResponseNewParamsToolChoiceUnion) openai.ChatCompletionToolChoiceOptionUnionParam
- func ConvertResponsesToolsToAnthropicBeta(tools []responses.ToolUnionParam) []anthropic.BetaToolUnionParam
- func ConvertResponsesToolsToChatTools(tools []responses.ToolUnionParam) []openai.ChatCompletionToolUnionParam
- func ConvertTextBlocksToString(blocks []anthropic.TextBlockParam) string
- func ExtractInstructions(raw map[string]interface{}) string
- func IsThinkingEnabled(anthropicReq *anthropic.MessageNewParams) bool
- func IsThinkingEnabledBeta(anthropicReq *anthropic.BetaMessageNewParams) bool
- func NormalizeSchemaTypes(schema *genai.Schema)
- func ParamOpt[T comparable](value T) param.Opt[T]
- func ParseImageURLToAnthropicSource(url string) (mediaType, data, remoteURL string)
- func RequiresMaxCompletionTokens(model string) bool
- type ChatGPTBackendRequest
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AnthropicParamOpt ¶
func AnthropicParamOpt[T comparable](value T) param.Opt[T]
AnthropicParamOpt wraps param.NewOpt for the Anthropic SDK. Kept as a named alias to avoid import collisions when both Anthropic and OpenAI SDK param packages are used in the same file (both export NewOpt/Opt).
func CleanupOpenaiFields ¶
func CleanupOpenaiFields(req *openai.ChatCompletionNewParams)
CleanupOpenaiFields removes temporary fields used during transformation Note: This should be called AFTER vendor transforms have processed x_thinking
func ConvertAnthropicBetaToGoogleRequest ¶
func ConvertAnthropicBetaToGoogleRequest(anthropicReq *anthropic.BetaMessageNewParams, defaultMaxTokens int64) (string, []*genai.Content, *genai.GenerateContentConfig)
ConvertAnthropicBetaToGoogleRequest converts Anthropic beta request to Google format via the shared normalized request view.
func ConvertAnthropicBetaToGoogleToolChoice ¶
func ConvertAnthropicBetaToGoogleToolChoice(tc *anthropic.BetaToolChoiceUnionParam) *genai.ToolConfig
func ConvertAnthropicBetaToGoogleTools ¶
func ConvertAnthropicBetaToGoogleTools(tools []anthropic.BetaToolUnionParam) []*genai.FunctionDeclaration
func ConvertAnthropicBetaToOpenAIRequest ¶
func ConvertAnthropicBetaToOpenAIRequest(anthropicReq *anthropic.BetaMessageNewParams, compatible bool, isStreaming bool, disableStreamUsage bool) (*openai.ChatCompletionNewParams, *protocol.OpenAIConfig)
ConvertAnthropicBetaToOpenAIRequest converts Anthropic beta request to OpenAI format. Returns the OpenAI request and a config object with metadata for provider transforms. The conversion itself is shared with the v1 variant via the normalized request view (see anthropic_view.go).
func ConvertAnthropicBetaToResponsesRequest ¶
func ConvertAnthropicBetaToResponsesRequest(anthropicReq *anthropic.BetaMessageNewParams) *responses.ResponseNewParams
ConvertAnthropicBetaToResponsesRequest converts Anthropic beta request to OpenAI Responses API format The Responses API has a different structure than Chat Completions
func ConvertAnthropicBetaToolChoiceToOpenAI ¶
func ConvertAnthropicBetaToolChoiceToOpenAI(tc *anthropic.BetaToolChoiceUnionParam) openai.ChatCompletionToolChoiceOptionUnionParam
ConvertAnthropicBetaToolChoiceToOpenAI converts Anthropic beta tool_choice to OpenAI format
func ConvertAnthropicBetaToolChoiceToResponses ¶
func ConvertAnthropicBetaToolChoiceToResponses(tc *anthropic.BetaToolChoiceUnionParam) responses.ResponseNewParamsToolChoiceUnion
ConvertAnthropicBetaToolChoiceToResponses converts Anthropic beta tool_choice to Responses API format
func ConvertAnthropicBetaToolsToOpenAI ¶
func ConvertAnthropicBetaToolsToOpenAI(tools []anthropic.BetaToolUnionParam) []openai.ChatCompletionToolUnionParam
ConvertAnthropicBetaToolsToOpenAI converts Anthropic beta tools to OpenAI format
func ConvertAnthropicBetaToolsToOpenAIWithTransformedSchema ¶
func ConvertAnthropicBetaToolsToOpenAIWithTransformedSchema(tools []anthropic.BetaToolUnionParam) []openai.ChatCompletionToolUnionParam
ConvertAnthropicBetaToolsToOpenAIWithTransformedSchema is an alias for ConvertAnthropicBetaToolsToOpenAI Schema transformation is handled by provider-specific transforms
func ConvertAnthropicBetaToolsToResponses ¶
func ConvertAnthropicBetaToolsToResponses(tools []anthropic.BetaToolUnionParam) []responses.ToolUnionParam
ConvertAnthropicBetaToolsToResponses converts Anthropic beta tools to Responses API format
func ConvertAnthropicToGoogleRequest ¶
func ConvertAnthropicToGoogleRequest(anthropicReq *anthropic.MessageNewParams, defaultMaxTokens int64) (string, []*genai.Content, *genai.GenerateContentConfig)
ConvertAnthropicToGoogleRequest converts Anthropic request to Google format. The conversion is shared with the Beta variant via the normalized request view (see anthropic_view.go).
func ConvertAnthropicToGoogleToolChoice ¶
func ConvertAnthropicToGoogleToolChoice(tc *anthropic.ToolChoiceUnionParam) *genai.ToolConfig
func ConvertAnthropicToGoogleTools ¶
func ConvertAnthropicToGoogleTools(tools []anthropic.ToolUnionParam) []*genai.FunctionDeclaration
func ConvertAnthropicToOpenAIRequest ¶
func ConvertAnthropicToOpenAIRequest(anthropicReq *anthropic.MessageNewParams, compatible bool, isStreaming bool, disableStreamUsage bool) (*openai.ChatCompletionNewParams, *protocol.OpenAIConfig)
ConvertAnthropicToOpenAIRequest converts Anthropic request to OpenAI format. Returns the OpenAI request and a config object with metadata for provider transforms. The conversion itself is shared with the Beta variant via the normalized request view (see anthropic_view.go).
func ConvertAnthropicToolChoiceToOpenAI ¶
func ConvertAnthropicToolChoiceToOpenAI(tc *anthropic.ToolChoiceUnionParam) openai.ChatCompletionToolChoiceOptionUnionParam
ConvertAnthropicToolChoiceToOpenAI converts Anthropic tool_choice to OpenAI format
func ConvertAnthropicToolsToOpenAI ¶
func ConvertAnthropicToolsToOpenAI(tools []anthropic.ToolUnionParam) []openai.ChatCompletionToolUnionParam
ConvertAnthropicToolsToOpenAI converts Anthropic tools to OpenAI format
func ConvertAnthropicToolsToOpenAIWithTransformedSchema ¶
func ConvertAnthropicToolsToOpenAIWithTransformedSchema(tools []anthropic.ToolUnionParam) []openai.ChatCompletionToolUnionParam
ConvertAnthropicToolsToOpenAIWithTransformedSchema is an alias for ConvertAnthropicToolsToOpenAI Schema transformation is handled by provider-specific transforms
func ConvertAnthropicV1ToBetaRequest ¶ added in v0.260514.1
func ConvertAnthropicV1ToBetaRequest(req *anthropic.MessageNewParams) *anthropic.BetaMessageNewParams
ConvertAnthropicV1ToBetaRequest projects an Anthropic v1 MessageNewParams onto the Beta MessageNewParams shape. Beta's wire format is a strict structural superset of v1's (same field names and shapes; Beta only adds optional fields), so a v1 request's own JSON round-trips losslessly into the Beta struct — every block type (text, image, tool_use, tool_result, documents, cache_control, ...) survives without hand-maintained per-type conversion. This previously did a field-by-field Go copy that silently dropped tool_result content and image data; the round-trip has no such gaps and needs no updates when the SDK adds new block types.
This compatibility wrapper keeps the historical nil-on-failure behavior for context-extraction callers. Protocol boundaries that need an actionable error should use ConvertAnthropicV1ToBetaRequestWithError.
func ConvertAnthropicV1ToBetaRequestWithError ¶ added in v0.260806.1
func ConvertAnthropicV1ToBetaRequestWithError(req *anthropic.MessageNewParams) (*anthropic.BetaMessageNewParams, error)
ConvertAnthropicV1ToBetaRequestWithError performs the same wire conversion and reports malformed or non-JSON parameter values to the caller.
func ConvertAnthropicV1ToResponsesRequest ¶
func ConvertAnthropicV1ToResponsesRequest(anthropicReq *anthropic.MessageNewParams) *responses.ResponseNewParams
ConvertAnthropicV1ToResponsesRequest converts Anthropic v1 request to OpenAI Responses API format The Responses API has a different structure than Chat Completions
func ConvertAnthropicV1ToolChoiceToResponses ¶
func ConvertAnthropicV1ToolChoiceToResponses(tc *anthropic.ToolChoiceUnionParam) responses.ResponseNewParamsToolChoiceUnion
ConvertAnthropicV1ToolChoiceToResponses converts Anthropic v1 tool_choice to Responses API format
func ConvertAnthropicV1ToolsToResponses ¶
func ConvertAnthropicV1ToolsToResponses(tools []anthropic.ToolUnionParam) []responses.ToolUnionParam
ConvertAnthropicV1ToolsToResponses converts Anthropic v1 tools to Responses API format
func ConvertBetaContentBlocksToString ¶
func ConvertBetaContentBlocksToString(blocks []anthropic.BetaContentBlockParamUnion) string
ConvertBetaContentBlocksToString converts Anthropic beta content blocks to string
func ConvertBetaTextBlocksToString ¶
func ConvertBetaTextBlocksToString(blocks []anthropic.BetaTextBlockParam) string
ConvertBetaTextBlocksToString converts Anthropic beta TextBlockParam array to string
func ConvertChatMessagesToResponsesInput ¶ added in v0.260507.1
func ConvertChatMessagesToResponsesInput(messages []openai.ChatCompletionMessageParamUnion) responses.ResponseInputParam
ConvertChatMessagesToResponsesInput converts Chat Completion messages to Responses API input items.
func ConvertChatToOpenAIResponses ¶ added in v0.260507.1
func ConvertChatToOpenAIResponses(params *openai.ChatCompletionNewParams, defaultMaxTokens int64) *responses.ResponseNewParams
ConvertChatToOpenAIResponses converts OpenAI Chat Completions params to Responses API format. This enables using Chat Completions format with Responses API providers.
func ConvertChatToolChoiceToResponsesToolChoice ¶ added in v0.260507.1
func ConvertChatToolChoiceToResponsesToolChoice(choice *openai.ChatCompletionToolChoiceOptionUnionParam) responses.ResponseNewParamsToolChoiceUnion
ConvertChatToolChoiceToResponsesToolChoice converts Chat Completion tool_choice to Responses API format.
func ConvertChatToolsToResponsesTools ¶ added in v0.260507.1
func ConvertChatToolsToResponsesTools(tools []openai.ChatCompletionToolUnionParam) []responses.ToolUnionParam
ConvertChatToolsToResponsesTools converts Chat Completion tools to Responses API tools.
func ConvertContentBlocksToString ¶
func ConvertContentBlocksToString(blocks []anthropic.ContentBlockParamUnion) string
ConvertContentBlocksToString converts Anthropic content blocks to string
func ConvertFunctionCallOutputToChatGPTFormat ¶
func ConvertFunctionCallOutputToChatGPTFormat(output *responses.ResponseInputItemFunctionCallOutputParam) map[string]interface{}
ConvertFunctionCallOutputToChatGPTFormat converts function_call_output items to ChatGPT backend format.
func ConvertFunctionCallToChatGPTFormat ¶
func ConvertFunctionCallToChatGPTFormat(call *responses.ResponseFunctionToolCallParam) map[string]interface{}
ConvertFunctionCallToChatGPTFormat converts function_call items to ChatGPT backend format.
func ConvertGooglePartsToString ¶
ConvertGooglePartsToString converts Google parts to a single string
func ConvertGoogleToAnthropicRequest ¶
func ConvertGoogleToAnthropicRequest(model string, contents []*genai.Content, config *genai.GenerateContentConfig) anthropic.MessageNewParams
ConvertGoogleToAnthropicRequest converts Google Content and config to Anthropic format
func ConvertGoogleToOpenAIRequest ¶
func ConvertGoogleToOpenAIRequest(model string, contents []*genai.Content, config *genai.GenerateContentConfig) *openai.ChatCompletionNewParams
ConvertGoogleToOpenAIRequest converts Google Content and config to OpenAI format
func ConvertGoogleToolChoiceToAnthropic ¶
func ConvertGoogleToolChoiceToAnthropic(config *genai.FunctionCallingConfig) anthropic.ToolChoiceUnionParam
func ConvertGoogleToolChoiceToOpenAI ¶
func ConvertGoogleToolChoiceToOpenAI(config *genai.FunctionCallingConfig) openai.ChatCompletionToolChoiceOptionUnionParam
func ConvertGoogleToolsToAnthropic ¶
func ConvertGoogleToolsToAnthropic(funcs []*genai.FunctionDeclaration) []anthropic.ToolUnionParam
func ConvertGoogleToolsToOpenAI ¶
func ConvertGoogleToolsToOpenAI(funcs []*genai.FunctionDeclaration) []openai.ChatCompletionToolUnionParam
func ConvertOpenAIResponsesToAnthropicBetaRequest ¶
func ConvertOpenAIResponsesToAnthropicBetaRequest( params responses.ResponseNewParams, defaultMaxTokens int64, ) *anthropic.BetaMessageNewParams
ConvertOpenAIResponsesToAnthropicBetaRequest converts OpenAI Responses API params to Anthropic Beta Message API format.
Note: The following Responses API fields are not supported in Anthropic's Message API:
- MaxToolCalls: Anthropic doesn't have an equivalent limit
- ParallelToolCalls: Anthropic supports parallel tool calls by default
- Include (web_search sources, code interpreter outputs, etc.): Not supported
- PreviousResponseID: Requires conversation state management
- TopLogprobs: Anthropic Message API doesn't support logprobs
- Reasoning tokens: Special handling required for o1/o3 models
func ConvertOpenAIResponsesToChat ¶
func ConvertOpenAIResponsesToChat(params *responses.ResponseNewParams, defaultMaxTokens int64) *openai.ChatCompletionNewParams
ConvertOpenAIResponsesToChat converts OpenAI Responses API params to Chat Completions format. This is useful when translating between the two API formats.
func ConvertOpenAIToAnthropicRequest ¶
func ConvertOpenAIToAnthropicRequest(req *openai.ChatCompletionNewParams, defaultMaxTokens int64) *anthropic.BetaMessageNewParams
ConvertOpenAIToAnthropicRequest converts OpenAI ChatCompletionNewParams to Anthropic SDK format
func ConvertOpenAIToAnthropicToolChoice ¶
func ConvertOpenAIToAnthropicToolChoice(tc *openai.ChatCompletionToolChoiceOptionUnionParam) anthropic.BetaToolChoiceUnionParam
func ConvertOpenAIToAnthropicTools ¶
func ConvertOpenAIToAnthropicTools(tools []openai.ChatCompletionToolUnionParam) []anthropic.BetaToolUnionParam
func ConvertOpenAIToGoogleRequest ¶
func ConvertOpenAIToGoogleRequest(req *openai.ChatCompletionNewParams, defaultMaxTokens int64) (string, []*genai.Content, *genai.GenerateContentConfig)
ConvertOpenAIToGoogleRequest converts OpenAI ChatCompletionNewParams to Google SDK format
func ConvertOpenAIToGoogleToolChoice ¶
func ConvertOpenAIToGoogleToolChoice(tc *openai.ChatCompletionToolChoiceOptionUnionParam) *genai.ToolConfig
func ConvertOpenAIToGoogleTools ¶
func ConvertOpenAIToGoogleTools(tools []openai.ChatCompletionToolUnionParam) []*genai.FunctionDeclaration
func ConvertRawInputToChatGPTFormat ¶
func ConvertRawInputToChatGPTFormat(raw map[string]interface{}) []interface{}
ConvertRawInputToChatGPTFormat converts raw input items to ChatGPT backend API format.
func ConvertResponseInputToChatGPTFormat ¶
func ConvertResponseInputToChatGPTFormat(inputItems responses.ResponseInputParam) []interface{}
ConvertResponseInputToChatGPTFormat converts ResponseInputParam to ChatGPT backend API format.
func ConvertResponseToolChoiceToChatGPTFormat ¶
func ConvertResponseToolChoiceToChatGPTFormat(toolChoice responses.ResponseNewParamsToolChoiceUnion) interface{}
ConvertResponseToolChoiceToChatGPTFormat converts ToolChoice from Responses API format to ChatGPT backend API format.
func ConvertResponseToolsToChatGPTFormat ¶
func ConvertResponseToolsToChatGPTFormat(tools []responses.ToolUnionParam) []interface{}
ConvertResponseToolsToChatGPTFormat converts Tools from Responses API format to ChatGPT backend API format.
func ConvertResponsesInputToMessages ¶
func ConvertResponsesInputToMessages(items responses.ResponseInputParam) []openai.ChatCompletionMessageParamUnion
ConvertResponsesInputToMessages converts Responses API input items to Chat Completion messages.
func ConvertResponsesToolChoiceToAnthropicBeta ¶
func ConvertResponsesToolChoiceToAnthropicBeta(tc responses.ResponseNewParamsToolChoiceUnion) anthropic.BetaToolChoiceUnionParam
ConvertResponsesToolChoiceToAnthropicBeta converts Responses API tool_choice to Anthropic Beta format
func ConvertResponsesToolChoiceToChat ¶
func ConvertResponsesToolChoiceToChat(choice responses.ResponseNewParamsToolChoiceUnion) openai.ChatCompletionToolChoiceOptionUnionParam
ConvertResponsesToolChoiceToChat converts Responses API tool choice to Chat Completions format.
func ConvertResponsesToolsToAnthropicBeta ¶
func ConvertResponsesToolsToAnthropicBeta(tools []responses.ToolUnionParam) []anthropic.BetaToolUnionParam
ConvertResponsesToolsToAnthropicBeta converts Responses API tools to Anthropic Beta tools
func ConvertResponsesToolsToChatTools ¶
func ConvertResponsesToolsToChatTools(tools []responses.ToolUnionParam) []openai.ChatCompletionToolUnionParam
ConvertResponsesToolsToChatTools converts Responses API tools to Chat Completions tools.
func ConvertTextBlocksToString ¶
func ConvertTextBlocksToString(blocks []anthropic.TextBlockParam) string
ConvertTextBlocksToString converts Anthropic TextBlockParam array to string
func ExtractInstructions ¶
ExtractInstructions extracts system message content as instructions.
func IsThinkingEnabled ¶
func IsThinkingEnabled(anthropicReq *anthropic.MessageNewParams) bool
IsThinkingEnabled checks if thinking mode is enabled in the Anthropic request
func IsThinkingEnabledBeta ¶
func IsThinkingEnabledBeta(anthropicReq *anthropic.BetaMessageNewParams) bool
IsThinkingEnabledBeta checks if thinking mode is enabled in the Anthropic beta request
func NormalizeSchemaTypes ¶ added in v0.260507.1
NormalizeSchemaTypes converts lowercase JSON Schema types to Google's uppercase format This recursively processes all schemas, including nested properties and array items
func ParamOpt ¶
func ParamOpt[T comparable](value T) param.Opt[T]
ParamOpt wraps param.NewOpt for the OpenAI SDK. Kept as a named alias to avoid import collisions when both Anthropic and OpenAI SDK param packages are used in the same file (both export NewOpt/Opt).
func ParseImageURLToAnthropicSource ¶ added in v0.260531.1
ParseImageURLToAnthropicSource splits a string from OpenAI's image_url.url (used by both Chat Completions and the Responses API) into the bits an Anthropic image source needs.
Returns mediaType and data when the URL is a "data:<mime>;base64,<payload>" data URL. Returns the same URL string back as remoteURL when it's a regular http(s) URL. Exactly one of (mediaType+data) or remoteURL is non-empty for well-formed input.
func RequiresMaxCompletionTokens ¶
RequiresMaxCompletionTokens checks if the model requires max_completion_tokens instead of max_tokens. Newer OpenAI models (gpt-4o, o1 series, gpt-4.1) use max_completion_tokens.
Types ¶
type ChatGPTBackendRequest ¶
type ChatGPTBackendRequest struct {
Model string `json:"model"`
Stream bool `json:"stream"`
Instructions string `json:"instructions"`
Input []interface{} `json:"input,omitempty"`
Tools []interface{} `json:"tools,omitempty"`
ToolChoice interface{} `json:"tool_choice,omitempty"`
Store bool `json:"store"`
Include []string `json:"include"`
MaxTokens int `json:"max_tokens,omitempty"`
MaxCompletion int `json:"max_completion_tokens,omitempty"`
Temperature float64 `json:"temperature,omitempty"`
TopP float64 `json:"top_p,omitempty"`
}
ChatGPTBackendRequest represents a request to the ChatGPT backend API.
Source Files
¶
- anthropic_beta_to_openai.go
- anthropic_beta_to_responses.go
- anthropic_helper.go
- anthropic_v1_to_beta.go
- anthropic_v1_to_openai.go
- anthropic_v1_to_responses.go
- anthropic_view.go
- any_to_google.go
- cache_control.go
- google_to_any.go
- image_helper.go
- openai_chat_to_openai_responses.go
- openai_helper.go
- openai_responses_to_anthropic.go
- openai_responses_to_chat.go
- openai_to_anthropic.go
- responses_to_chatgpt.go
- thinking_helper.go
- toolcall_helper.go