首次提交:初始化项目代码
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
package chat
|
||||
|
||||
import (
|
||||
"context"
|
||||
"resume-platform/internal/agent"
|
||||
"resume-platform/internal/ai"
|
||||
)
|
||||
|
||||
type IMService struct {
|
||||
aiProvider ai.Provider
|
||||
resumeAgent *agent.ResumeAgent
|
||||
}
|
||||
|
||||
func NewIMService(provider ai.Provider, resumeAgent *agent.ResumeAgent) *IMService {
|
||||
return &IMService{aiProvider: provider, resumeAgent: resumeAgent}
|
||||
}
|
||||
|
||||
func (s *IMService) GetAIProvider() ai.Provider {
|
||||
return s.aiProvider
|
||||
}
|
||||
|
||||
func (s *IMService) GetResumeAgent() *agent.ResumeAgent {
|
||||
return s.resumeAgent
|
||||
}
|
||||
|
||||
func (s *IMService) GenerateWithAgent(ctx context.Context, query string) (string, error) {
|
||||
if s.resumeAgent != nil {
|
||||
return s.resumeAgent.Run(ctx, query)
|
||||
}
|
||||
if s.aiProvider != nil {
|
||||
return s.aiProvider.Generate(ctx, query)
|
||||
}
|
||||
return "", nil
|
||||
}
|
||||
Reference in New Issue
Block a user