如何在PandasAI中使用Azure托管身份?能否配置Azure AD Token调用?
PandasAI使用Azure AD Token替代API密钥的可行方案
目前PandasAI暂不支持直接配置Azure托管身份,但可以通过注入自定义OpenAI客户端的方式实现用Azure AD Token调用,具体步骤如下:
- 先获取Azure AD Token提供者并初始化带Token的OpenAI客户端
from azure.identity import DefaultAzureCredential, get_bearer_token_provider from openai import AzureOpenAI token_provider = get_bearer_token_provider(DefaultAzureCredential(), "https://cognitiveservices.azure.com/.default") client = AzureOpenAI( api_version="2024-02-15-preview", azure_endpoint="https://{your_domain}.openai.azure.com/", azure_ad_token_provider=token_provider )
- 将自定义客户端传入PandasAI的LLM实例
from pandasai import PandasAI from pandasai.llm import OpenAI # 用自定义客户端初始化PandasAI的LLM llm = OpenAI(client=client) pandas_ai = PandasAI(llm) # 正常执行PandasAI操作 result = pandas_ai.run(your_dataframe, prompt="分析数据的关键趋势")
注意事项
- 建议使用PandasAI v1.0及以上版本,旧版本可能不支持传入自定义OpenAI客户端
- 确认Azure AD身份拥有Azure OpenAI资源的调用权限,避免出现权限错误
内容的提问来源于stack exchange,提问作者Atharva Khutale
相关产品推荐
相关产品推荐

