首次提交:初始化项目代码
This commit is contained in:
@@ -0,0 +1,51 @@
|
||||
package ai
|
||||
|
||||
import (
|
||||
"context"
|
||||
"resume-platform/internal/ai"
|
||||
"resume-platform/internal/prompt"
|
||||
)
|
||||
|
||||
type AIService struct {
|
||||
provider ai.Provider
|
||||
}
|
||||
|
||||
func NewAIService(provider ai.Provider) *AIService {
|
||||
return &AIService{provider: provider}
|
||||
}
|
||||
|
||||
func (s *AIService) PolishSummary(ctx context.Context, original string) (string, error) {
|
||||
promptText := prompt.BuildPolishSummaryPrompt(original)
|
||||
|
||||
return s.provider.Generate(ctx, promptText)
|
||||
}
|
||||
|
||||
func (s *AIService) PolishExperience(ctx context.Context, original string, company string, position string) (string, error) {
|
||||
promptText := prompt.BuildPolishExperiencePrompt(original, company, position)
|
||||
|
||||
return s.provider.Generate(ctx, promptText)
|
||||
}
|
||||
|
||||
func (s *AIService) PolishProject(ctx context.Context, original string, projectName string) (string, error) {
|
||||
promptText := prompt.BuildPolishProjectPrompt(original, projectName)
|
||||
|
||||
return s.provider.Generate(ctx, promptText)
|
||||
}
|
||||
|
||||
func (s *AIService) PolishDescription(ctx context.Context, original string, fieldType string) (string, error) {
|
||||
promptText := prompt.BuildPolishDescriptionPrompt(original, fieldType)
|
||||
|
||||
return s.provider.Generate(ctx, promptText)
|
||||
}
|
||||
|
||||
func (s *AIService) GetProviderName() string {
|
||||
return s.provider.GetName()
|
||||
}
|
||||
|
||||
func (s *AIService) Generate(ctx context.Context, prompt string) (string, error) {
|
||||
return s.provider.Generate(ctx, prompt)
|
||||
}
|
||||
|
||||
func (s *AIService) Embedding(ctx context.Context, text string) ([]float64, error) {
|
||||
return nil, nil
|
||||
}
|
||||
Reference in New Issue
Block a user