MCPcopy Index your code
hub / github.com/coder/coder / CreateOpenAICompatChatModelConfig

Function CreateOpenAICompatChatModelConfig

coderd/coderdtest/chat.go:53–84  ·  view source on GitHub ↗

CreateOpenAICompatChatModelConfig creates the default provider and model config used by chat runtime tests. Tests can pass a baseURL to route chat work to a specific local provider. If baseURL is empty, this helper starts a fake OpenAI-compatible provider.

(
	t testing.TB,
	client *codersdk.ExperimentalClient,
	baseURL string,
)

Source from the content-addressed store, hash-verified

51// to a specific local provider. If baseURL is empty, this helper starts a fake
52// OpenAI-compatible provider.
53func CreateOpenAICompatChatModelConfig(
54 t testing.TB,
55 client *codersdk.ExperimentalClient,
56 baseURL string,
57) codersdk.ChatModelConfig {
58 t.Helper()
59
60 if baseURL == "" {
61 baseURL = chattest.OpenAI(t)
62 }
63
64 ctx := testutil.Context(t, testutil.WaitLong)
65 provider, err := client.CreateAIProvider(ctx, codersdk.CreateAIProviderRequest{
66 Type: codersdk.AIProviderType(TestChatProviderOpenAICompat),
67 Name: "test-" + uuid.NewString(),
68 BaseURL: baseURL,
69 Enabled: true,
70 APIKeys: []string{TestChatProviderAPIKey},
71 })
72 require.NoError(t, err)
73 contextLimit := int64(4096)
74 isDefault := true
75 modelConfig, err := client.CreateChatModelConfig(ctx, codersdk.CreateChatModelConfigRequest{
76 Provider: TestChatProviderOpenAICompat,
77 AIProviderID: &provider.ID,
78 Model: TestChatModelOpenAICompat,
79 ContextLimit: &contextLimit,
80 IsDefault: &isDefault,
81 })
82 require.NoError(t, err)
83 return modelConfig
84}
85
86// WaitForChatSettled waits for a chat to leave active processing and drains
87// tracked chat daemon work before returning the final row.

Calls 6

OpenAIFunction · 0.92
ContextFunction · 0.92
AIProviderTypeTypeAlias · 0.92
CreateAIProviderMethod · 0.80
CreateChatModelConfigMethod · 0.80
HelperMethod · 0.65