mirror of
https://github.com/hwchase17/langchain
synced 2024-11-04 06:00:26 +00:00
core[patch]: Remove deep copying of run prior to submitting it to LangChain Tracing (#16904)
This commit is contained in:
parent
e02efd513f
commit
bdacfafa05
@ -65,16 +65,6 @@ def _get_executor() -> ThreadPoolExecutor:
|
||||
return _EXECUTOR
|
||||
|
||||
|
||||
def _copy(run: Run) -> Run:
|
||||
"""Copy a run."""
|
||||
try:
|
||||
return run.copy(deep=True)
|
||||
except TypeError:
|
||||
# Fallback in case the object contains a lock or other
|
||||
# non-pickleable object
|
||||
return run.copy()
|
||||
|
||||
|
||||
class LangChainTracer(BaseTracer):
|
||||
"""An implementation of the SharedTracer that POSTS to the langchain endpoint."""
|
||||
|
||||
@ -202,63 +192,63 @@ class LangChainTracer(BaseTracer):
|
||||
"""Persist an LLM run."""
|
||||
if run.parent_run_id is None:
|
||||
run.reference_example_id = self.example_id
|
||||
self._submit(self._persist_run_single, _copy(run))
|
||||
self._submit(self._persist_run_single, run)
|
||||
|
||||
def _on_chat_model_start(self, run: Run) -> None:
|
||||
"""Persist an LLM run."""
|
||||
if run.parent_run_id is None:
|
||||
run.reference_example_id = self.example_id
|
||||
self._submit(self._persist_run_single, _copy(run))
|
||||
self._submit(self._persist_run_single, run)
|
||||
|
||||
def _on_llm_end(self, run: Run) -> None:
|
||||
"""Process the LLM Run."""
|
||||
self._submit(self._update_run_single, _copy(run))
|
||||
self._submit(self._update_run_single, run)
|
||||
|
||||
def _on_llm_error(self, run: Run) -> None:
|
||||
"""Process the LLM Run upon error."""
|
||||
self._submit(self._update_run_single, _copy(run))
|
||||
self._submit(self._update_run_single, run)
|
||||
|
||||
def _on_chain_start(self, run: Run) -> None:
|
||||
"""Process the Chain Run upon start."""
|
||||
if run.parent_run_id is None:
|
||||
run.reference_example_id = self.example_id
|
||||
self._submit(self._persist_run_single, _copy(run))
|
||||
self._submit(self._persist_run_single, run)
|
||||
|
||||
def _on_chain_end(self, run: Run) -> None:
|
||||
"""Process the Chain Run."""
|
||||
self._submit(self._update_run_single, _copy(run))
|
||||
self._submit(self._update_run_single, run)
|
||||
|
||||
def _on_chain_error(self, run: Run) -> None:
|
||||
"""Process the Chain Run upon error."""
|
||||
self._submit(self._update_run_single, _copy(run))
|
||||
self._submit(self._update_run_single, run)
|
||||
|
||||
def _on_tool_start(self, run: Run) -> None:
|
||||
"""Process the Tool Run upon start."""
|
||||
if run.parent_run_id is None:
|
||||
run.reference_example_id = self.example_id
|
||||
self._submit(self._persist_run_single, _copy(run))
|
||||
self._submit(self._persist_run_single, run)
|
||||
|
||||
def _on_tool_end(self, run: Run) -> None:
|
||||
"""Process the Tool Run."""
|
||||
self._submit(self._update_run_single, _copy(run))
|
||||
self._submit(self._update_run_single, run)
|
||||
|
||||
def _on_tool_error(self, run: Run) -> None:
|
||||
"""Process the Tool Run upon error."""
|
||||
self._submit(self._update_run_single, _copy(run))
|
||||
self._submit(self._update_run_single, run)
|
||||
|
||||
def _on_retriever_start(self, run: Run) -> None:
|
||||
"""Process the Retriever Run upon start."""
|
||||
if run.parent_run_id is None:
|
||||
run.reference_example_id = self.example_id
|
||||
self._submit(self._persist_run_single, _copy(run))
|
||||
self._submit(self._persist_run_single, run)
|
||||
|
||||
def _on_retriever_end(self, run: Run) -> None:
|
||||
"""Process the Retriever Run."""
|
||||
self._submit(self._update_run_single, _copy(run))
|
||||
self._submit(self._update_run_single, run)
|
||||
|
||||
def _on_retriever_error(self, run: Run) -> None:
|
||||
"""Process the Retriever Run upon error."""
|
||||
self._submit(self._update_run_single, _copy(run))
|
||||
self._submit(self._update_run_single, run)
|
||||
|
||||
def wait_for_futures(self) -> None:
|
||||
"""Wait for the given futures to complete."""
|
||||
|
Loading…
Reference in New Issue
Block a user