Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commitdcd3bed

Browse files
committed
feat: track usage & prompts
Signed-off-by: Danny Kopping <dannykopping@gmail.com>
1 parent91755c2 commitdcd3bed

File tree

19 files changed

+591
-3771
lines changed

19 files changed

+591
-3771
lines changed

‎aibridged/aibridged.go

Lines changed: 28 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import (
1515
"golang.org/x/xerrors"
1616

1717
"github.com/coder/coder/v2/aibridged/proto"
18-
"github.com/coder/coder/v2/coderd/database"
1918
"github.com/coder/coder/v2/codersdk"
2019
)
2120

@@ -49,16 +48,17 @@ type Server struct {
4948
// shuttingDownCh will receive when we start graceful shutdown
5049
shuttingDownChchanstruct{}
5150

52-
bridge*Bridge
51+
bridge*Bridge
5352
}
5453

55-
funcNew(store database.Store,rpcDialerDialer,httpAddrstring,logger slog.Logger) (*Server,error) {
54+
var_ proto.DRPCAIBridgeDaemonServer=&Server{}
55+
56+
funcNew(rpcDialerDialer,httpAddrstring,logger slog.Logger) (*Server,error) {
5657
ifrpcDialer==nil {
5758
returnnil,xerrors.Errorf("nil rpcDialer given")
5859
}
5960

6061
ctx,cancel:=context.WithCancel(context.Background())
61-
bridge:=NewBridge(httpAddr,store)
6262
daemon:=&Server{
6363
logger:logger,
6464
clientDialer:rpcDialer,
@@ -68,9 +68,11 @@ func New(store database.Store, rpcDialer Dialer, httpAddr string, logger slog.Lo
6868
closedCh:make(chanstruct{}),
6969
shuttingDownCh:make(chanstruct{}),
7070
initConnectionCh:make(chanstruct{}),
71-
72-
bridge:bridge,
7371
}
72+
73+
bridge:=NewBridge(httpAddr,daemon.client)
74+
daemon.bridge=bridge
75+
7476
godaemon.connect()
7577
gofunc() {
7678
err:=bridge.Serve()
@@ -164,6 +166,26 @@ func (s *Server) AuditPrompt(ctx context.Context, in *proto.AuditPromptRequest)
164166
returnout,nil
165167
}
166168

169+
func (s*Server)TrackTokenUsage(ctx context.Context,in*proto.TrackTokenUsageRequest) (*proto.TrackTokenUsageResponse,error) {
170+
out,err:=clientDoWithRetries(ctx,s.client,func(ctx context.Context,client proto.DRPCAIBridgeDaemonClient) (*proto.TrackTokenUsageResponse,error) {
171+
returnclient.TrackTokenUsage(ctx,in)
172+
})
173+
iferr!=nil {
174+
returnnil,err
175+
}
176+
returnout,nil
177+
}
178+
179+
func (s*Server)TrackUserPrompts(ctx context.Context,in*proto.TrackUserPromptsRequest) (*proto.TrackUserPromptsResponse,error) {
180+
out,err:=clientDoWithRetries(ctx,s.client,func(ctx context.Context,client proto.DRPCAIBridgeDaemonClient) (*proto.TrackUserPromptsResponse,error) {
181+
returnclient.TrackUserPrompts(ctx,in)
182+
})
183+
iferr!=nil {
184+
returnnil,err
185+
}
186+
returnout,nil
187+
}
188+
167189
//func (s *Server) ChatCompletions(payload *proto.JSONPayload, stream proto.DRPCOpenAIService_ChatCompletionsStream) error {
168190
//// TODO: call OpenAI API.
169191
//

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp