initial commit of untested function stuff
This commit is contained in:
16
openai.go
16
openai.go
@@ -7,14 +7,14 @@ import (
|
||||
"strings"
|
||||
)
|
||||
|
||||
type openai struct {
|
||||
type openaiImpl struct {
|
||||
key string
|
||||
model string
|
||||
}
|
||||
|
||||
var _ LLM = openai{}
|
||||
var _ LLM = openaiImpl{}
|
||||
|
||||
func (o openai) requestToOpenAIRequest(request Request) oai.ChatCompletionRequest {
|
||||
func (o openaiImpl) requestToOpenAIRequest(request Request) oai.ChatCompletionRequest {
|
||||
res := oai.ChatCompletionRequest{
|
||||
Model: o.model,
|
||||
}
|
||||
@@ -90,7 +90,7 @@ func (o openai) requestToOpenAIRequest(request Request) oai.ChatCompletionReques
|
||||
return res
|
||||
}
|
||||
|
||||
func (o openai) responseToLLMResponse(response oai.ChatCompletionResponse) Response {
|
||||
func (o openaiImpl) responseToLLMResponse(response oai.ChatCompletionResponse) Response {
|
||||
res := Response{}
|
||||
|
||||
for _, choice := range response.Choices {
|
||||
@@ -118,7 +118,7 @@ func (o openai) responseToLLMResponse(response oai.ChatCompletionResponse) Respo
|
||||
return res
|
||||
}
|
||||
|
||||
func (o openai) ChatComplete(ctx context.Context, request Request) (Response, error) {
|
||||
func (o openaiImpl) ChatComplete(ctx context.Context, request Request) (Response, error) {
|
||||
cl := oai.NewClient(o.key)
|
||||
|
||||
req := o.requestToOpenAIRequest(request)
|
||||
@@ -128,14 +128,14 @@ func (o openai) ChatComplete(ctx context.Context, request Request) (Response, er
|
||||
fmt.Println("resp:", fmt.Sprintf("%#v", resp))
|
||||
|
||||
if err != nil {
|
||||
return Response{}, fmt.Errorf("unhandled openai error: %w", err)
|
||||
return Response{}, fmt.Errorf("unhandled openaiImpl error: %w", err)
|
||||
}
|
||||
|
||||
return o.responseToLLMResponse(resp), nil
|
||||
}
|
||||
|
||||
func (o openai) ModelVersion(modelVersion string) (ChatCompletion, error) {
|
||||
return openai{
|
||||
func (o openaiImpl) ModelVersion(modelVersion string) (ChatCompletion, error) {
|
||||
return openaiImpl{
|
||||
key: o.key,
|
||||
model: modelVersion,
|
||||
}, nil
|
||||
|
Reference in New Issue
Block a user