AI Agent接入GraphQL:精准查询,不多不少

📘 AI教程 💬 🔥 Trending

🩺 摘要

REST API调用一次返回10个字段,你只要1个——浪费了9/10的数据和token。GraphQL让你只取需要的字段。

📝 详情

Agent调用REST API查用户信息,API返回了名字、邮箱、地址、订单历史、积分、等级、注册时间……Agent只想要个邮箱。剩下的token全白花了。

GraphQL解决这个问题——你要什么字段,它就返回什么字段。

实现

from gql import gql, Client

async def query_graphql(query_str: str) -> dict:
    \"\"\"执行GraphQL查询\"\"\"
    query = gql(query_str)
    result = await client.execute_async(query)
    return result

Agent使用:

"帮我查张三的邮箱和注册时间"
→ 自动生成GraphQL查询:{ user(name: "张三") { email createdAt } }
→ 只返回这两个字段

REST vs GraphQL for Agent

维度 REST GraphQL
数据量 全量返回 只取所需
Token浪费
灵活性
复杂度

总结

如果你的Agent频繁调用同一个API,且每次只需要部分数据——GraphQL能省下一半的token费用