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

Method resolveComputerUseModel

coderd/x/chatd/computer_use.go:60–104  ·  view source on GitHub ↗
(
	ctx context.Context,
	chat database.Chat,
	route resolvedModelRoute,
	computerUseProvider string,
	computerUseModelProvider string,
	computerUseModelName string,
	modelOpts modelBuildOptions,
)

Source from the content-addressed store, hash-verified

58}
59
60func (p *Server) resolveComputerUseModel(
61 ctx context.Context,
62 chat database.Chat,
63 route resolvedModelRoute,
64 computerUseProvider string,
65 computerUseModelProvider string,
66 computerUseModelName string,
67 modelOpts modelBuildOptions,
68) (
69 model fantasy.LanguageModel,
70 debugEnabled bool,
71 resolvedProvider string,
72 resolvedModel string,
73 err error,
74) {
75 resolvedProvider, resolvedModel, err = chatprovider.ResolveModelWithProviderHint(
76 computerUseModelName,
77 computerUseModelProvider,
78 )
79 if err != nil {
80 return nil, false, "", "", xerrors.Errorf(
81 "resolve computer use model metadata for provider %q model %q: %w",
82 computerUseProvider,
83 computerUseModelName,
84 err,
85 )
86 }
87
88 model, debugEnabled, err = p.newDebugAwareModel(ctx, modelClientRequest{
89 Chat: chat,
90 ModelName: computerUseModelName,
91 UserAgent: chatprovider.UserAgent(),
92 ExtraHeaders: chatprovider.CoderHeaders(chat),
93 }, route, modelOpts)
94 if err != nil {
95 return nil, false, "", "", xerrors.Errorf(
96 "resolve computer use model for provider %q model %q: %w",
97 computerUseProvider,
98 computerUseModelName,
99 err,
100 )
101 }
102
103 return model, debugEnabled, resolvedProvider, resolvedModel, nil
104}
105
106type computerUseProviderToolOptions struct {
107 provider string

Calls 5

newDebugAwareModelMethod · 0.95
UserAgentFunction · 0.92
CoderHeadersFunction · 0.92
ErrorfMethod · 0.45