Azure / Azure/azure-sdk-for-python
azure-ai-inference : LangChain `AzureAIChatCompletionsModel` Does Not Support OpenAI-Style JSON Schema Format
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 5.6k
- Forks
- 3.4k
- Merge moyen
- 2 j 2 h
- PR mergées (30 j)
- 213
Description
-
Issue description
When usinglangchain_azure_ai.AzureAIChatCompletionsModelwith structured output (e.g., create_agent(..., response_format=ProviderStrategy()...), the integration fails with:
ValueError: Unsupportedresponse_format{'type': 'json_schema', 'json_schema': {...}}
This occurs inazure/ai/inference/_patch.py -
Steps to Reproduce
from langchain_azure_ai.chat_models import AzureAIChatCompletionsModel from pydantic import BaseModel, Field import os llm = AzureAIChatCompletionsModel( endpoint=os.getenv("GITHUB_INFERENCE_ENDPOINT"), credential=os.getenv("GITHUB_TOKEN"), model="gpt-4o", ) class ContactInfo(BaseModel): name: str = Field(description="The name of the person") email: str = Field(description="The email of the person") phone: str = Field(description="The phone number of the person") agent = create_agent( model = gllm_4_1, tools = [search_tool], response_format=ProviderStrategy(ContactInfo) ) agent.invoke({"messages": [HumanMessage(content="Extract contact info from: John Doe, john@example.com, (555) 123-4567")]}) -
Alternatives considered
Uselangchain-openaiinstead, which treats Azure-compatible endpoints as OpenAI endpoints.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez par reproduire l’exemple de sortie structurée et inspectez azure/ai/inference/_patch.py, où l’erreur de response_format non pris en charge se produit. Suivez la manière dont le format json_schema de type OpenAI-style est validé, puis vérifiez que AzureAIChatCompletionsModel accepte le format et que l’invocation de sortie structurée s’achève sans le ValueError.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- python
- Domaine
- api
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- À l'abandon
- Clarté
- Plutôt claire
- Accessibilité débutants
- 45/100