Documentation
¶
Index ¶
- Variables
- type ExamineService
- type LLMExamineService
- func (svc *LLMExamineService) Correct(ctx context.Context, uid int64, qid int64, questionResult domain.Result) error
- func (svc *LLMExamineService) Examine(ctx context.Context, uid int64, qid int64, input string) (domain.ExamineResult, error)
- func (svc *LLMExamineService) GetResults(ctx context.Context, uid int64, ids []int64) (map[int64]domain.ExamineResult, error)
- func (svc *LLMExamineService) QuestionResult(ctx context.Context, uid, qid int64) (domain.Result, error)
- type QuestionKnowledgeBase
- type QuestionSetService
- type Service
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrInsufficientCredit = ai.ErrInsufficientCredit
Functions ¶
This section is empty.
Types ¶
type ExamineService ¶ added in v0.1.8
type ExamineService interface { // Examine 测试服务 // input 是用户输入的内容 Examine(ctx context.Context, uid, qid int64, input string) (domain.ExamineResult, error) QuestionResult(ctx context.Context, uid, qid int64) (domain.Result, error) GetResults(ctx context.Context, uid int64, ids []int64) (map[int64]domain.ExamineResult, error) Correct(ctx context.Context, uid int64, qid int64, questionResult domain.Result) error }
ExamineService 测试服务
func NewLLMExamineService ¶ added in v0.1.8
func NewLLMExamineService( queRepo repository.Repository, repo repository.ExamineRepository, aiSvc ai.LLMService, ) ExamineService
type LLMExamineService ¶ added in v0.1.8
type LLMExamineService struct {
// contains filtered or unexported fields
}
LLMExamineService 使用 LLM 进行评价的测试服务
func (*LLMExamineService) Examine ¶ added in v0.1.8
func (svc *LLMExamineService) Examine(ctx context.Context, uid int64, qid int64, input string) (domain.ExamineResult, error)
Examine 的执行步骤: - 先抽取关键点 - 比较候选人遗漏的关键点 - 根据关键点评分 因此总体上要调用 AI 两次
func (*LLMExamineService) GetResults ¶ added in v0.1.8
func (svc *LLMExamineService) GetResults(ctx context.Context, uid int64, ids []int64) (map[int64]domain.ExamineResult, error)
func (*LLMExamineService) QuestionResult ¶ added in v0.1.8
type QuestionKnowledgeBase ¶ added in v0.3.3
type QuestionKnowledgeBase interface {
FullSync()
}
func NewQuestionKnowledgeBase ¶ added in v0.3.3
func NewQuestionKnowledgeBase(knowledgeBaseId string, queRepo repository.Repository, knowledgeBaseSvc ai.KnowledgeBaseService) QuestionKnowledgeBase
type QuestionSetService ¶
type QuestionSetService interface { Save(ctx context.Context, set domain.QuestionSet) (int64, error) UpdateQuestions(ctx context.Context, set domain.QuestionSet) error List(ctx context.Context, offset, limit int) ([]domain.QuestionSet, int64, error) ListDefault(ctx context.Context, offset, limit int) ([]domain.QuestionSet, int64, error) Detail(ctx context.Context, id int64) (domain.QuestionSet, error) GetByIds(ctx context.Context, ids []int64) ([]domain.QuestionSet, error) DetailByBiz(ctx context.Context, biz string, bizId int64) (domain.QuestionSet, error) GetCandidates(ctx context.Context, id int64, offset int, limit int) ([]domain.Question, int64, error) GetByIDsWithQuestion(ctx context.Context, ids []int64) ([]domain.QuestionSet, error) PubDetail(ctx context.Context, id int64) (domain.QuestionSet, error) }
QuestionSetService 还没有分离制作库和线上库
func NewQuestionSetService ¶
func NewQuestionSetService(repo repository.QuestionSetRepository, queRepo repository.Repository, intrProducer event.InteractiveEventProducer, producer event.SyncDataToSearchEventProducer) QuestionSetService
type Service ¶
type Service interface { // Save 保存数据,question 绝对不会为 nil Save(ctx context.Context, question *domain.Question) (int64, error) Publish(ctx context.Context, que *domain.Question) (int64, error) List(ctx context.Context, offset int, limit int) ([]domain.Question, int64, error) Detail(ctx context.Context, qid int64) (domain.Question, error) // Delete 会直接删除制作库和线上库的数据 Delete(ctx context.Context, qid int64) error // PubList 只会返回八股文的数据 PubList(ctx context.Context, offset int, limit int) (int64, []domain.Question, error) // GetPubByIDs 目前只会获取基础信息,也就是不包括答案在内的信息 GetPubByIDs(ctx context.Context, ids []int64) ([]domain.Question, error) PubDetail(ctx context.Context, qid int64) (domain.Question, error) }
Service TODO 要分离制作库接口和线上库接口
func NewService ¶
func NewService(repo repository.Repository, syncEvent event.SyncDataToSearchEventProducer, intrEvent event.InteractiveEventProducer, knowledgeBaseProducer event.KnowledgeBaseEventProducer, ) Service
Click to show internal directories.
Click to hide internal directories.