Clarify appended messages and streamline repair
This commit is contained in:
@@ -55,19 +55,20 @@ func (r *defaultOutputRepairer) Repair(ctx context.Context, req RepairRequest) (
|
||||
return nil, err
|
||||
}
|
||||
|
||||
messages := domain.ConcatRenderedMessages(req.OriginalMessages, nil)
|
||||
if strings.TrimSpace(req.PreviousOutput) != "" {
|
||||
messages = append(messages, domain.RenderedMessage{
|
||||
hasPreviousOutput := strings.TrimSpace(req.PreviousOutput) != ""
|
||||
suffix := make([]domain.RenderedMessage, 0, 2)
|
||||
if hasPreviousOutput {
|
||||
suffix = append(suffix, domain.RenderedMessage{
|
||||
Role: domain.RoleAssistant,
|
||||
Content: req.PreviousOutput,
|
||||
})
|
||||
}
|
||||
|
||||
previousResponse := "The previous response was empty."
|
||||
if strings.TrimSpace(req.PreviousOutput) != "" {
|
||||
if hasPreviousOutput {
|
||||
previousResponse = "The previous response is included immediately before this instruction."
|
||||
}
|
||||
messages = append(messages, domain.RenderedMessage{
|
||||
suffix = append(suffix, domain.RenderedMessage{
|
||||
Role: domain.RoleUser,
|
||||
Content: fmt.Sprintf(
|
||||
"Repair attempt %d of %d for validation mode %s.\n"+
|
||||
@@ -82,6 +83,7 @@ func (r *defaultOutputRepairer) Repair(ctx context.Context, req RepairRequest) (
|
||||
formatRepairDiagnostics(req.ValidationErrors),
|
||||
),
|
||||
})
|
||||
messages := domain.ConcatRenderedMessages(req.OriginalMessages, suffix)
|
||||
|
||||
resp, err := r.llm.Generate(ctx, newGenerationRequest(
|
||||
domain.RenderedPrompt{Messages: messages},
|
||||
|
||||
Reference in New Issue
Block a user