vtcode-core 0.136.5

Core library for VT Code - a Rust-based terminal coding agent
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use crate::llm::provider::{LLMProvider, LLMRequest, Message};
use anyhow::{Context, Result};

/// Summarize the provided text using the configured provider.
pub async fn summarize_text(provider: &dyn LLMProvider, model: &str, prompt: &str) -> Result<String> {
    let request = LLMRequest {
        messages: std::sync::Arc::new(vec![Message::user(prompt.to_string())]),
        model: model.to_string(),
        ..Default::default()
    };

    let response = provider.generate(request).await.context("Failed to generate summary")?;
    Ok(response.content.unwrap_or_default())
}