pub struct TracingChatModel<M: BaseChatModel> { /* private fields */ }Expand description
Wrapper around any BaseChatModel that records LLM call traces.
Implementations§
Source§impl<M: BaseChatModel> TracingChatModel<M>
impl<M: BaseChatModel> TracingChatModel<M>
pub fn new( inner: M, store: Arc<dyn TracingStore>, event_bus: EventBus, trace_id: String, ) -> Self
pub fn with_parent_span(self, span_id: String) -> Self
Trait Implementations§
Source§impl<M: BaseChatModel + 'static> BaseChatModel for TracingChatModel<M>
impl<M: BaseChatModel + 'static> BaseChatModel for TracingChatModel<M>
Source§fn invoke(
&self,
messages: &[Message],
config: &RunnableConfig,
) -> Result<Message, ModelError>
fn invoke( &self, messages: &[Message], config: &RunnableConfig, ) -> Result<Message, ModelError>
Invoke the model with a list of messages and get a response.
Source§fn ainvoke<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
messages: &'life1 [Message],
config: &'life2 RunnableConfig,
) -> Pin<Box<dyn Future<Output = Result<Message, ModelError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
fn ainvoke<'life0, 'life1, 'life2, 'async_trait>(
&'life0 self,
messages: &'life1 [Message],
config: &'life2 RunnableConfig,
) -> Pin<Box<dyn Future<Output = Result<Message, ModelError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
'life2: 'async_trait,
Invoke the model asynchronously. Default delegates to sync invoke via block_in_place.
Source§fn astream<'a>(
&'a self,
messages: &'a [Message],
config: &'a RunnableConfig,
) -> MessageStream<'a>
fn astream<'a>( &'a self, messages: &'a [Message], config: &'a RunnableConfig, ) -> MessageStream<'a>
Stream tokens from the model. Returns a stream of partial Message chunks. Read more
Source§fn bind_tools(&self, tools: Vec<ToolDef>) -> Box<dyn BaseChatModel>
fn bind_tools(&self, tools: Vec<ToolDef>) -> Box<dyn BaseChatModel>
Bind tools to the model for tool-calling support.
Auto Trait Implementations§
impl<M> !RefUnwindSafe for TracingChatModel<M>
impl<M> !UnwindSafe for TracingChatModel<M>
impl<M> Freeze for TracingChatModel<M>where
M: Freeze,
impl<M> Send for TracingChatModel<M>
impl<M> Sync for TracingChatModel<M>
impl<M> Unpin for TracingChatModel<M>where
M: Unpin,
impl<M> UnsafeUnpin for TracingChatModel<M>where
M: UnsafeUnpin,
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