package v1

import (
	"context"

	"github.com/pingcap-inc/pingcat/internal/apiserver/store"
	v1 "github.com/pingcap-inc/pingcat/model/v1"
)

type GPTService struct {
	store store.Factory
}

type GPTSrv interface {
	ChatCompletion(ctx context.Context, msgs []*v1.GPTChatMessage, opts *v1.GPTChatOption) (*v1.GPTChatRes, error)
}

var _ GPTSrv = (*GPTService)(nil)

func NewGPT(store store.Factory) *GPTService {
	return &GPTService{store: store}
}
