MCPcopy Create free account
hub / github.com/coder/coder / ProviderOptionsFromChatConfig

Function ProviderOptionsFromChatConfig

coderd/x/chatd/chatopenai/options.go:17–61  ·  view source on GitHub ↗

ProviderOptionsFromChatConfig converts chat model OpenAI options to fantasy provider options used for inference calls.

(
	model fantasy.LanguageModel,
	options *codersdk.ChatModelOpenAIProviderOptions,
)

Source from the content-addressed store, hash-verified

15// ProviderOptionsFromChatConfig converts chat model OpenAI options to fantasy
16// provider options used for inference calls.
17func ProviderOptionsFromChatConfig(
18 model fantasy.LanguageModel,
19 options *codersdk.ChatModelOpenAIProviderOptions,
20) fantasy.ProviderOptionsData {
21 reasoningEffort := ReasoningEffortFromChat(options.ReasoningEffort)
22 if UsesResponsesOptions(model) {
23 include := EnsureResponseIncludes(IncludeFromChat(options.Include))
24 providerOptions := &fantasyopenai.ResponsesProviderOptions{
25 Include: include,
26 Instructions: chatutil.NormalizedStringPointer(options.Instructions),
27 Logprobs: ResponsesLogProbsFromChatConfig(options),
28 MaxToolCalls: options.MaxToolCalls,
29 Metadata: options.Metadata,
30 ParallelToolCalls: options.ParallelToolCalls,
31 PromptCacheKey: chatutil.NormalizedStringPointer(options.PromptCacheKey),
32 ReasoningEffort: reasoningEffort,
33 ReasoningSummary: chatutil.NormalizedStringPointer(options.ReasoningSummary),
34 SafetyIdentifier: chatutil.NormalizedStringPointer(options.SafetyIdentifier),
35 ServiceTier: ServiceTierFromChat(options.ServiceTier),
36 StrictJSONSchema: options.StrictJSONSchema,
37 Store: boolPtrOrDefault(options.Store, true),
38 TextVerbosity: TextVerbosityFromChat(options.TextVerbosity),
39 User: chatutil.NormalizedStringPointer(options.User),
40 }
41 return providerOptions
42 }
43
44 return &fantasyopenai.ProviderOptions{
45 LogitBias: options.LogitBias,
46 LogProbs: options.LogProbs,
47 TopLogProbs: options.TopLogProbs,
48 ParallelToolCalls: options.ParallelToolCalls,
49 User: chatutil.NormalizedStringPointer(options.User),
50 ReasoningEffort: reasoningEffort,
51 MaxCompletionTokens: options.MaxCompletionTokens,
52 TextVerbosity: chatutil.NormalizedStringPointer(options.TextVerbosity),
53 Prediction: options.Prediction,
54 Store: boolPtrOrDefault(options.Store, true),
55 Metadata: options.Metadata,
56 PromptCacheKey: chatutil.NormalizedStringPointer(options.PromptCacheKey),
57 SafetyIdentifier: chatutil.NormalizedStringPointer(options.SafetyIdentifier),
58 ServiceTier: chatutil.NormalizedStringPointer(options.ServiceTier),
59 StructuredOutputs: options.StructuredOutputs,
60 }
61}
62
63// TextVerbosityFromChat normalizes chat-config text verbosity values for
64// OpenAI and returns the canonical provider verbosity value.

Calls 9

NormalizedStringPointerFunction · 0.92
UsesResponsesOptionsFunction · 0.85
EnsureResponseIncludesFunction · 0.85
IncludeFromChatFunction · 0.85
ServiceTierFromChatFunction · 0.85
boolPtrOrDefaultFunction · 0.85
TextVerbosityFromChatFunction · 0.85
ReasoningEffortFromChatFunction · 0.70