pub struct CreateKnowledgeBaseDoc { /* private fields */ }Expand description
§Example
use elevenlabs_rs::{ElevenLabsClient, Result};
use elevenlabs_rs::endpoints::convai::agents::*;
use elevenlabs_rs::endpoints::convai::knowledge_base::{CreateKnowledgeBaseDoc, KnowledgeBaseDoc};
#[tokio::main]
async fn main() -> Result<()> {
let client = ElevenLabsClient::from_env()?;
let kb = KnowledgeBaseDoc::url("https://elevenlabs.io/blog");
// Or KnowledgeBaseDoc::file("some_file.pdf");
let endpoint = CreateKnowledgeBaseDoc::new(kb);
let resp = client.hit(endpoint).await?;
// You must now patch the agent to include the knowledge base
let kb = KnowledgeBase::new_url(resp.id, "ElevenLabs' Blog");
let prompt_config = PromptConfig::default().with_knowledge_base(vec![kb]);
let agent_config = AgentConfig::default().with_prompt(prompt_config);
let config = ConversationConfig::default().with_agent_config(agent_config);
let body = UpdateAgentBody::default().with_conversation_config(config);
let endpoint = UpdateAgent::new("agent_id", body);
let resp = client.hit(endpoint).await?;
println!("{:#?}", resp);
Ok(())
}Implementations§
Source§impl CreateKnowledgeBaseDoc
impl CreateKnowledgeBaseDoc
pub fn new( body: impl Into<CreateKnowledgeBaseDocBody>, ) -> CreateKnowledgeBaseDoc
Trait Implementations§
Source§impl Clone for CreateKnowledgeBaseDoc
impl Clone for CreateKnowledgeBaseDoc
Source§fn clone(&self) -> CreateKnowledgeBaseDoc
fn clone(&self) -> CreateKnowledgeBaseDoc
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CreateKnowledgeBaseDoc
impl Debug for CreateKnowledgeBaseDoc
Source§impl ElevenLabsEndpoint for CreateKnowledgeBaseDoc
impl ElevenLabsEndpoint for CreateKnowledgeBaseDoc
const PATH: &'static str = "v1/convai/knowledge-base"
const METHOD: Method = Method::POST
type ResponseBody = CreateKnowledgeBaseDocResponse
async fn request_body( &self, ) -> Result<RequestBody, Box<dyn Error + Sync + Send>>
async fn response_body( self, resp: Response, ) -> Result<<CreateKnowledgeBaseDoc as ElevenLabsEndpoint>::ResponseBody, Box<dyn Error + Sync + Send>>
const BASE_URL: &'static str = "https://api.elevenlabs.io"
fn query_params(&self) -> Option<Vec<(&'static str, String)>>
fn path_params(&self) -> Vec<(&'static str, &str)>
fn url(&self) -> Url
Auto Trait Implementations§
impl Freeze for CreateKnowledgeBaseDoc
impl RefUnwindSafe for CreateKnowledgeBaseDoc
impl Send for CreateKnowledgeBaseDoc
impl Sync for CreateKnowledgeBaseDoc
impl Unpin for CreateKnowledgeBaseDoc
impl UnwindSafe for CreateKnowledgeBaseDoc
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more