Replacing px.Client() in LlamaTrace Code for Remote Connection
I'm using llamatrace, what do I use in this code block to replace px.Client() since when I use it goes back to my local host: # setup Arize Phoenix for logging/observability import llama_index.core import os PHOENIX_API_KEY = os.getenv("PHOENIX_API_KEY") os.environ["OTEL_EXPORTER_OTLP_HEADERS"] = f"api_key={PHOENIX_API_KEY}" llama_index.core.set_global_handler( "arize_phoenix", endpoint="https://llamatrace.com/v1/traces" )
from phoenix.evals import (
HallucinationEvaluator,
OpenAIModel,
QAEvaluator,
RelevanceEvaluator,
run_evals,
)
from phoenix.session.evaluation import get_qa_with_reference, get_retrieved_documents
from phoenix.trace import DocumentEvaluations, SpanEvaluations
from tqdm import tqdm
import phoenix as px
# Define the evaluation model
eval_model = OpenAIModel(
azure_endpoint=AZURE_OPENAI_ENDPOINT,
azure_deployment="gpt-4o", # I'm using gpt-4o for evaluation
model=AZURE_OPENAI_CHAT_COMPLETION_DEPLOYED_MODEL_NAME,
api_key=AZURE_OPENAI_API_KEY,
api_version="2024-02-01"
)
# Define evaluators
hallucination_evaluator = HallucinationEvaluator(eval_model)
qa_correctness_evaluator = QAEvaluator(eval_model)
relevance_evaluator = RelevanceEvaluator(eval_model)
# List of project names
projects = ["Baseline", "Contextual"]
# Create DataFrames for queries and retrieved documents for each project
queries_dfs = {}
retrieved_documents_dfs = {}
for project in projects:
queries_dfs[project] = get_qa_with_reference(px.Client(), project_name=project)
retrieved_documents_dfs[project] = get_retrieved_documents(px.Client(), project_name=project)
# Loop through each project and perform evaluations
for project in projects:
queries_df = queries_dfs[project]
retrieved_documents_df = retrieved_documents_dfs[project]
# Run evaluations
hallucination_eval_df, qa_correctness_eval_df = run_evals(
dataframe=queries_df,
evaluators=[hallucination_evaluator, qa_correctness_evaluator],
provide_explanation=True,
)
relevance_eval_df = run_evals(
dataframe=retrieved_documents_df,
evaluators=[relevance_evaluator],
provide_explanation=True,
)[0]
# Log evaluations
px.Client().log_evaluations(
SpanEvaluations(eval_name=f"Hallucination_{project}", dataframe=hallucination_eval_df),
SpanEvaluations(eval_name=f"QA Correctness_{project}", dataframe=qa_correctness_eval_df),
DocumentEvaluations(eval_name=f"Relevance_{project}", dataframe=relevance_eval_df),
)error:onnectError: [WinError 10061] No connection could be made because the target machine actively refused it
