deep_research and swear_cleanup were sharing one Cargo.toml, so every build compiled clap/indicatif/scraper/chrono (only needed by deep_research) even when just building swear_cleanup for its own course work, and vice versa. Moves each into its own workspace member crate (deep_research/, swear_cleanup/) with an independent Cargo.toml declaring only the deps it actually uses; common deps/versions are pinned once via [workspace.dependencies] so the two don't drift. Verified `cargo build -p swear_cleanup` alone no longer pulls in clap/indicatif/scraper/chrono (schemars still compiles for it, but that's a direct transitive dependency of rig itself, not something this split can avoid). Also verified the relocated deep_research binary still runs end-to-end against live Ollama with correct footnote citations and sources. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
43 lines
963 B
Rust
43 lines
963 B
Rust
use serde::Deserialize;
|
|
|
|
#[derive(Deserialize)]
|
|
pub(crate) struct ChatLogprobs {
|
|
pub(crate) content: Vec<TokenLogprob>,
|
|
}
|
|
|
|
#[derive(Deserialize)]
|
|
pub(crate) struct TokenLogprob {
|
|
pub(crate) top_logprobs: Vec<TopLogprob>,
|
|
}
|
|
|
|
#[derive(Deserialize)]
|
|
pub(crate) struct TopLogprob {
|
|
pub(crate) token: String,
|
|
pub(crate) logprob: f64,
|
|
}
|
|
|
|
#[derive(Deserialize)]
|
|
pub(crate) struct Prompts {
|
|
pub(crate) shieldstral: ShieldstralPrompts,
|
|
pub(crate) gemma: GemmaPrompts,
|
|
pub(crate) critic: CriticPrompts,
|
|
}
|
|
|
|
#[derive(Deserialize)]
|
|
pub(crate) struct CriticPrompts {
|
|
pub(crate) system: String,
|
|
pub(crate) prompt_template: String,
|
|
}
|
|
|
|
#[derive(Deserialize)]
|
|
pub(crate) struct ShieldstralPrompts {
|
|
pub(crate) system: String,
|
|
pub(crate) prompt_template: String,
|
|
}
|
|
|
|
#[derive(Deserialize)]
|
|
pub(crate) struct GemmaPrompts {
|
|
pub(crate) preamble: String,
|
|
pub(crate) evil_seed_prompt: String,
|
|
pub(crate) revise_template: String,
|
|
}
|