Jump to content

Connect Leeroopedia MCP: Equip your AI agents to search best practices, build plans, verify code, diagnose failures, and look up hyperparameter defaults.

Implementation:Truera Trulens Recording Retrieve Feedback Results

From Leeroopedia
Knowledge Sources
Domains LLM_Evaluation, Data_Analysis
Last Updated 2026-02-14 08:00 GMT

Overview

Concrete tool for retrieving feedback evaluation results as a pandas DataFrame from recorded application traces, provided by the trulens-core library.

Description

The Recording.retrieve_feedback_results method blocks until all feedback evaluations for recorded traces are complete, then returns a structured DataFrame. It delegates to App.retrieve_feedback_results which:

  1. Flushes the OTEL exporter to ensure all spans are persisted
  2. Waits for records to appear in the database
  3. Triggers immediate computation of pending feedback evaluations
  4. Waits for all feedback results to be persisted
  5. Queries records and feedback scores into a DataFrame

Usage

Call this method on a Recording object after exiting the recording context manager. Use it when you need programmatic access to feedback scores (for assertions, analysis, or CI/CD pipelines). The default timeout is 180 seconds.

Code Reference

Source Location

  • Repository: trulens
  • File: src/core/trulens/core/otel/recording.py (Recording.retrieve_feedback_results L44-56)
  • File: src/core/trulens/core/app.py (App.retrieve_feedback_results L760-791)

Signature

class Recording:
    def retrieve_feedback_results(self, timeout: float = 180) -> pd.DataFrame:
        """Retrieve feedback results for all records in the recording.

        Args:
            timeout: Timeout in seconds to wait for feedback completion.

        Returns:
            A DataFrame with records as rows and feedbacks as columns.
        """

Import

# No separate import - accessed via Recording object:
with tru_app as recording:
    app.invoke(query)

results = recording.retrieve_feedback_results()

I/O Contract

Inputs

Name Type Required Description
timeout float No Max seconds to wait for results (default: 180)

Outputs

Name Type Description
return pd.DataFrame Records as rows (indexed by record_id), feedback names as columns, scores as values

Usage Examples

Retrieve Results After Recording

from trulens.apps.langchain import TruChain

tru_recorder = TruChain(chain, app_name="MyApp", feedbacks=[f1, f2])

with tru_recorder as recording:
    chain.invoke("What is TruLens?")

# Block until all feedback evaluations complete
results_df = recording.retrieve_feedback_results(timeout=300)
print(results_df)
# Output: DataFrame with columns like 'answer_relevance', 'groundedness', etc.

Related Pages

Implements Principle

Requires Environment

Page Connections

Double-click a node to navigate. Hold to expand connections.
Principle
Implementation
Heuristic
Environment