Skip to content

Commit 4c95111

Browse files
committed
refactor(gateway): move chat into core package
Signed-off-by: Praveen Yadav <pyadav9678@gmail.com>
1 parent 132b5a5 commit 4c95111

12 files changed

Lines changed: 28 additions & 34 deletions

File tree

gateway/cmd/serve.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -69,7 +69,12 @@ func Serve(cfg *config.Config) error {
6969
promptService := prompt.NewService(promptRepository)
7070

7171
providerService := providers.NewService()
72-
deps := api.NewDeps(logger, ingester, rl, providerService, connectionService, promptService)
72+
deps := api.NewDeps(
73+
logger, ingester, rl,
74+
providerService,
75+
connectionService,
76+
promptService,
77+
)
7378

7479
if err := server.Serve(ctx, logger, cfg.App, deps); err != nil {
7580
logger.Error("error starting server", "error", err)
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package models
1+
package chat
22

33
type ResponseFormat struct {
44
Type string `json:"type,omitempty"`

gateway/core/connection/service.go

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -27,12 +27,10 @@ func NewService(connectionRepo Repository) *Service {
2727
}
2828
}
2929

30-
// DeleteByID implements connection.Repository.
3130
func (s *Service) DeleteByID(ctx context.Context, connID uuid.UUID) error {
3231
return s.connectionRepo.DeleteByID(ctx, connID)
3332
}
3433

35-
// GetAll implements connection.Repository.
3634
func (s *Service) GetAll(ctx context.Context) ([]Connection, error) {
3735
conns, err := s.connectionRepo.GetAll(ctx)
3836
if err != nil {
@@ -41,7 +39,6 @@ func (s *Service) GetAll(ctx context.Context) ([]Connection, error) {
4139
return conns, nil
4240
}
4341

44-
// GetByID implements connection.Repository.
4542
func (s *Service) GetByID(ctx context.Context, connID uuid.UUID) (Connection, error) {
4643
conn, err := s.connectionRepo.GetByID(ctx, connID)
4744
if err != nil {
@@ -51,7 +48,6 @@ func (s *Service) GetByID(ctx context.Context, connID uuid.UUID) (Connection, er
5148
return conn, err
5249
}
5350

54-
// GetByName implements connection.Repository.
5551
func (s *Service) GetByName(ctx context.Context, name string) (Connection, error) {
5652
conn, err := s.connectionRepo.GetByName(ctx, name)
5753
if err != nil {
@@ -61,7 +57,6 @@ func (s *Service) GetByName(ctx context.Context, name string) (Connection, error
6157
return conn, err
6258
}
6359

64-
// Upsert implements connection.Repository.
6560
func (s *Service) Upsert(ctx context.Context, c Connection) (Connection, error) {
6661
id, err := s.connectionRepo.Upsert(ctx, c)
6762
if err != nil {

gateway/internal/api/v1/chatcompletions.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ import (
77
"time"
88

99
"connectrpc.com/connect"
10+
"github.com/missingstudio/studio/backend/core/chat"
1011
"github.com/missingstudio/studio/backend/core/connection"
1112
"github.com/missingstudio/studio/backend/internal/constants"
1213
"github.com/missingstudio/studio/backend/internal/providers"
1314
"github.com/missingstudio/studio/backend/internal/providers/base"
1415
"github.com/missingstudio/studio/backend/internal/router"
15-
"github.com/missingstudio/studio/backend/models"
1616
"github.com/missingstudio/studio/common/errors"
1717
llmv1 "github.com/missingstudio/studio/protos/pkg/llm/v1"
1818
)
@@ -86,13 +86,13 @@ func (s *V1Handler) ChatCompletions(
8686
return connect.NewResponse(chatCompletionResponseSchema), nil
8787
}
8888

89-
func (s *V1Handler) createChatCompletionRequestSchema(req *llmv1.ChatCompletionRequest) (*models.ChatCompletionRequest, error) {
89+
func (s *V1Handler) createChatCompletionRequestSchema(req *llmv1.ChatCompletionRequest) (*chat.ChatCompletionRequest, error) {
9090
payload, err := json.Marshal(req)
9191
if err != nil {
9292
return nil, err
9393
}
9494

95-
data := &models.ChatCompletionRequest{}
95+
data := &chat.ChatCompletionRequest{}
9696
err = json.Unmarshal(payload, data)
9797
if err != nil {
9898
return nil, err
@@ -101,7 +101,7 @@ func (s *V1Handler) createChatCompletionRequestSchema(req *llmv1.ChatCompletionR
101101
return data, nil
102102
}
103103

104-
func (s *V1Handler) createChatCompletionResponseSchema(resp *models.ChatCompletionResponse) (*llmv1.ChatCompletionResponse, error) {
104+
func (s *V1Handler) createChatCompletionResponseSchema(resp *chat.ChatCompletionResponse) (*llmv1.ChatCompletionResponse, error) {
105105
payload, err := json.Marshal(resp)
106106
if err != nil {
107107
return nil, err
@@ -116,7 +116,7 @@ func (s *V1Handler) createChatCompletionResponseSchema(resp *models.ChatCompleti
116116
return data, nil
117117
}
118118

119-
func (s *V1Handler) sendMetrics(provider string, latency time.Duration, response *models.ChatCompletionResponse) {
119+
func (s *V1Handler) sendMetrics(provider string, latency time.Duration, response *chat.ChatCompletionResponse) {
120120
ingesterdata := make(map[string]any)
121121
ingesterdata["provider"] = provider
122122
ingesterdata["latency"] = latency

gateway/internal/providers/anyscale/anyscale.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ import (
77
"fmt"
88
"net/http"
99

10+
"github.com/missingstudio/studio/backend/core/chat"
1011
"github.com/missingstudio/studio/backend/core/connection"
11-
"github.com/missingstudio/studio/backend/models"
1212
"github.com/missingstudio/studio/backend/pkg/requester"
1313
)
1414

15-
func (anyscale *anyscaleProvider) ChatCompletion(ctx context.Context, payload *models.ChatCompletionRequest) (*models.ChatCompletionResponse, error) {
15+
func (anyscale *anyscaleProvider) ChatCompletion(ctx context.Context, payload *chat.ChatCompletionRequest) (*chat.ChatCompletionResponse, error) {
1616
client := requester.NewHTTPClient()
1717

1818
rawPayload, err := json.Marshal(payload)
@@ -32,7 +32,7 @@ func (anyscale *anyscaleProvider) ChatCompletion(ctx context.Context, payload *m
3232
return nil, err
3333
}
3434

35-
data := &models.ChatCompletionResponse{}
35+
data := &chat.ChatCompletionResponse{}
3636
if err := json.NewDecoder(resp.Body).Decode(data); err != nil {
3737
return nil, err
3838
}

gateway/internal/providers/azure/azure.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@ import (
44
"context"
55
"errors"
66

7+
"github.com/missingstudio/studio/backend/core/chat"
78
"github.com/missingstudio/studio/backend/internal/providers/openai"
8-
"github.com/missingstudio/studio/backend/models"
99
)
1010

11-
func (az *azureProvider) ChatCompletion(ctx context.Context, payload *models.ChatCompletionRequest) (*models.ChatCompletionResponse, error) {
11+
func (az *azureProvider) ChatCompletion(ctx context.Context, payload *chat.ChatCompletionRequest) (*chat.ChatCompletionResponse, error) {
1212
return nil, errors.New("Not yet implemented")
1313
}
1414

gateway/internal/providers/base/base.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,8 @@ package base
33
import (
44
"context"
55

6+
"github.com/missingstudio/studio/backend/core/chat"
67
"github.com/missingstudio/studio/backend/core/connection"
7-
"github.com/missingstudio/studio/backend/models"
88
)
99

1010
type ProviderConfig struct {
@@ -30,5 +30,5 @@ var ProviderRegistry = map[string]func(connection.Connection) IProvider{}
3030

3131
type ChatCompletionInterface interface {
3232
IProvider
33-
ChatCompletion(context.Context, *models.ChatCompletionRequest) (*models.ChatCompletionResponse, error)
33+
ChatCompletion(context.Context, *chat.ChatCompletionRequest) (*chat.ChatCompletionResponse, error)
3434
}

gateway/internal/providers/deepinfra/deepinfra.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ import (
77
"fmt"
88
"net/http"
99

10+
"github.com/missingstudio/studio/backend/core/chat"
1011
"github.com/missingstudio/studio/backend/core/connection"
11-
"github.com/missingstudio/studio/backend/models"
1212
"github.com/missingstudio/studio/backend/pkg/requester"
1313
)
1414

15-
func (deepinfra *deepinfraProvider) ChatCompletion(ctx context.Context, payload *models.ChatCompletionRequest) (*models.ChatCompletionResponse, error) {
15+
func (deepinfra *deepinfraProvider) ChatCompletion(ctx context.Context, payload *chat.ChatCompletionRequest) (*chat.ChatCompletionResponse, error) {
1616
client := requester.NewHTTPClient()
1717

1818
rawPayload, err := json.Marshal(payload)
@@ -32,7 +32,7 @@ func (deepinfra *deepinfraProvider) ChatCompletion(ctx context.Context, payload
3232
return nil, err
3333
}
3434

35-
data := &models.ChatCompletionResponse{}
35+
data := &chat.ChatCompletionResponse{}
3636
if err := json.NewDecoder(resp.Body).Decode(data); err != nil {
3737
return nil, err
3838
}

gateway/internal/providers/openai/openai.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,8 @@ import (
77
"fmt"
88
"net/http"
99

10+
"github.com/missingstudio/studio/backend/core/chat"
1011
"github.com/missingstudio/studio/backend/core/connection"
11-
"github.com/missingstudio/studio/backend/models"
1212
"github.com/missingstudio/studio/backend/pkg/requester"
1313
)
1414

@@ -28,7 +28,7 @@ var OpenAIModels = []string{
2828
"gpt-3.5-turbo-instruct",
2929
}
3030

31-
func (oai *openAIProvider) ChatCompletion(ctx context.Context, payload *models.ChatCompletionRequest) (*models.ChatCompletionResponse, error) {
31+
func (oai *openAIProvider) ChatCompletion(ctx context.Context, payload *chat.ChatCompletionRequest) (*chat.ChatCompletionResponse, error) {
3232
client := requester.NewHTTPClient()
3333

3434
rawPayload, err := json.Marshal(payload)
@@ -48,7 +48,7 @@ func (oai *openAIProvider) ChatCompletion(ctx context.Context, payload *models.C
4848
return nil, err
4949
}
5050

51-
data := &models.ChatCompletionResponse{}
51+
data := &chat.ChatCompletionResponse{}
5252
if err := json.NewDecoder(resp.Body).Decode(data); err != nil {
5353
return nil, err
5454
}

gateway/internal/providers/togetherai/togetherai.go

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,12 @@ import (
77
"fmt"
88
"net/http"
99

10+
"github.com/missingstudio/studio/backend/core/chat"
1011
"github.com/missingstudio/studio/backend/core/connection"
11-
"github.com/missingstudio/studio/backend/models"
1212
"github.com/missingstudio/studio/backend/pkg/requester"
1313
)
1414

15-
func (ta *togetherAIProvider) ChatCompletion(ctx context.Context, payload *models.ChatCompletionRequest) (*models.ChatCompletionResponse, error) {
15+
func (ta *togetherAIProvider) ChatCompletion(ctx context.Context, payload *chat.ChatCompletionRequest) (*chat.ChatCompletionResponse, error) {
1616
client := requester.NewHTTPClient()
1717

1818
rawPayload, err := json.Marshal(payload)
@@ -32,7 +32,7 @@ func (ta *togetherAIProvider) ChatCompletion(ctx context.Context, payload *model
3232
return nil, err
3333
}
3434

35-
data := &models.ChatCompletionResponse{}
35+
data := &chat.ChatCompletionResponse{}
3636
if err := json.NewDecoder(resp.Body).Decode(data); err != nil {
3737
return nil, err
3838
}

0 commit comments

Comments
 (0)