1#[allow(unused_imports)]
2pub(crate) use anyhow::{Error, Result, anyhow, bail};
3#[allow(unused_imports)]
4pub(crate) use tracing::{Level, debug, error, info, span, trace, warn};
5
6pub mod llms;
7pub mod requests;
8
9use llms::api::anthropic::builder::AnthropicBackendBuilder;
10use llms::api::openai::builder::OpenAIBackendBuilder;
11use llms::api::perplexity::builder::PerplexityBackendBuilder;
12
13pub struct LLMInterface;
14
15impl LLMInterface {
17 #[inline]
18 pub fn openai() -> OpenAIBackendBuilder {
19 OpenAIBackendBuilder::default()
20 }
21
22 #[inline]
23 pub fn anthropic() -> AnthropicBackendBuilder {
24 AnthropicBackendBuilder::default()
25 }
26
27 #[inline]
28 pub fn perplexity() -> PerplexityBackendBuilder {
29 PerplexityBackendBuilder::default()
30 }
31}