Observability for Qianfan with Opik

Baidu Qianfan provides OpenAI-compatible API endpoints for hosted model access. This guide shows how to use the OpenAI SDK with Opik to trace and evaluate Qianfan calls.

Getting started

First, ensure you have both opik and openai packages installed:

$pip install opik openai

You will need a Qianfan API key and an OpenAI-compatible base URL. The Qianfan OpenAI-compatible base URL is:

https://api.baiduqianfan.ai/v1

Refer to the Qianfan documentation for the latest setup steps and model list.

Tracking Qianfan API calls

1from opik.integrations.openai import track_openai
2from openai import OpenAI
3
4# Initialize the OpenAI client with your Qianfan base URL
5client = OpenAI(
6 base_url="https://api.baiduqianfan.ai/v1",
7 api_key="bce-v3/ALTAK-XXXXXXXX/XXXXXXXXXXXXXXXX", # Qianfan bearer token
8 default_headers={"appid": "app-xxxxxx"} # Optional Qianfan appid
9)
10client = track_openai(client)
11
12response = client.chat.completions.create(
13 model="ernie-4.0-turbo-8k", # Use a model name from Qianfan
14 messages=[
15 {"role": "user", "content": "Hello, world!"}
16 ],
17 temperature=0.7,
18 max_tokens=100
19)
20
21print(response.choices[0].message.content)

Advanced Usage

Using with @track decorator

You can combine the tracked client with Opik’s @track decorator for end-to-end tracing:

1from opik import track
2from opik.integrations.openai import track_openai
3from openai import OpenAI
4
5client = OpenAI(
6 base_url="https://api.baiduqianfan.ai/v1",
7 api_key="bce-v3/ALTAK-XXXXXXXX/XXXXXXXXXXXXXXXX", # Qianfan bearer token
8 default_headers={"appid": "app-xxxxxx"} # Optional Qianfan appid
9)
10client = track_openai(client)
11
12@track
13def summarize_report(text: str) -> str:
14 response = client.chat.completions.create(
15 model="ernie-4.0-turbo-8k",
16 messages=[
17 {"role": "user", "content": text}
18 ]
19 )
20
21 return response.choices[0].message.content
22
23summary = summarize_report("Summarize this report in 3 bullets.")
24print(summary)

Troubleshooting

Common Issues

  1. Authentication Errors: Confirm your API key is valid and has access to Qianfan
  2. Model Not Found: Verify the model name matches one available in Qianfan
  3. Base URL Issues: Ensure you are using the OpenAI-compatible endpoint from Qianfan

Getting Help

Next Steps

Once you have Qianfan integrated with Opik, you can:

For more information about OpenAI-compatible APIs, see the OpenAI integration guide.