Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -1030,7 +1030,9 @@ export class AmicalCloudProvider implements TranscriptionProvider {
vadProbs,
languages: snapshot.currentLanguages,
vocabulary: snapshot.currentVocabulary,
previousTranscription: snapshot.currentAggregatedTranscription,
// Not sent: conditioning on the running ASR output can seed a
// self-reinforcing repetition loop on the server side too.
previousTranscription: undefined,
formatting: {
enabled: enableFormatting,
},
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -286,9 +286,15 @@ export class WhisperProvider implements TranscriptionProvider {
aggregatedTranscription?: string,
accessibilityContext?: TranscribeContext["accessibilityContext"],
): string {
// NOTE: previousTranscription (the running ASR output) is intentionally not
// fed back as the initial prompt. Conditioning Whisper on its own prior
// output lets a single hallucinated phrase self-reinforce into a repetition
// loop across windows. Vocabulary and cursor context are static, so they
// stay. See whisper repetition-hallucination behavior.
void aggregatedTranscription;
const prompt = buildWhisperPrompt({
vocabulary,
previousTranscription: aggregatedTranscription,
previousTranscription: undefined,
beforeText:
accessibilityContext?.context?.textSelection?.preSelectionText,
});
Expand Down