Revision control
Copy as Markdown
// This Source Code Form is subject to the terms of the Mozilla Public
// License, v. 2.0. If a copy of the MPL was not distributed with this
/// Unified interface for all summary backends.
/// All implementations ( local models, litellm, ... ) must conform to this.
public protocol SummarizerProtocol {
var modelName: SummarizerModel { get }
func summarize(_ contentToSummarize: String) async throws -> String
func summarizeStreamed(_ contentToSummarize: String) -> AsyncThrowingStream<String, Error>
}