将函数调用与 Anthropic 结合使用,增强 Claude 的功能
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
将函数调用与 Anthropic Claude 搭配使用,以查询外部工具(例如 Google Places API)。此示例直接从 Claude 提示调用 Text Search Places API,以根据用户查询检索有关地点的信息。
深入探索
如需查看包含此代码示例的详细文档,请参阅以下内容:
代码示例
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
[[["易于理解","easyToUnderstand","thumb-up"],["解决了我的问题","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["很难理解","hardToUnderstand","thumb-down"],["信息或示例代码不正确","incorrectInformationOrSampleCode","thumb-down"],["没有我需要的信息/示例","missingTheInformationSamplesINeed","thumb-down"],["翻译问题","translationIssue","thumb-down"],["其他","otherDown","thumb-down"]],[],[],[],null,["# Use function calling with Anthropic to enhance the capabilities of Claude\n\nUse function calling with Anthropic Claude to query external tools, such as the Google Places API. The sample calls the Text Search Places API directly from your Claude prompt to retrieve information about places based on a user's query.\n\nExplore further\n---------------\n\n\nFor detailed documentation that includes this code sample, see the following:\n\n- [Request predictions with Claude models](/vertex-ai/generative-ai/docs/partner-models/claude/use-claude)\n\nCode sample\n-----------\n\n### Python\n\n\nBefore trying this sample, follow the Python setup instructions in the\n[Vertex AI quickstart using\nclient libraries](/vertex-ai/docs/start/client-libraries).\n\n\nFor more information, see the\n[Vertex AI Python API\nreference documentation](/python/docs/reference/aiplatform/latest).\n\n\nTo authenticate to Vertex AI, set up Application Default Credentials.\nFor more information, see\n\n[Set up authentication for a local development environment](/docs/authentication/set-up-adc-local-dev-environment).\n\n # TODO(developer): Vertex AI SDK - uncomment below & run\n # pip3 install --upgrade --user google-cloud-aiplatform\n # gcloud auth application-default login\n # pip3 install -U 'anthropic[vertex]'\n from anthropic import AnthropicVertex\n\n # TODO(developer): Update and un-comment below line\n # PROJECT_ID = \"your-project-id\"\n\n client = AnthropicVertex(project_id=PROJECT_ID, region=\"us-east5\")\n message = client.messages.create(\n model=\"claude-3-5-sonnet-v2@20241022\",\n max_tokens=1024,\n tools=[\n {\n \"name\": \"text_search_places_api\",\n \"description\": \"returns information about a set of places based on a string\",\n \"input_schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"textQuery\": {\n \"type\": \"string\",\n \"description\": \"The text string on which to search\",\n },\n \"priceLevels\": {\n \"type\": \"array\",\n \"description\": \"Price levels to query places, value can be one of [PRICE_LEVEL_INEXPENSIVE, PRICE_LEVEL_MODERATE, PRICE_LEVEL_EXPENSIVE, PRICE_LEVEL_VERY_EXPENSIVE]\",\n },\n \"openNow\": {\n \"type\": \"boolean\",\n \"description\": \"whether those places are open for business.\",\n },\n },\n \"required\": [\"textQuery\"],\n },\n }\n ],\n messages=[\n {\n \"role\": \"user\",\n \"content\": \"What are some affordable and good Italian restaurants open now in San Francisco??\",\n }\n ],\n )\n print(message.model_dump_json(indent=2))\n # Example response:\n # {\n # \"id\": \"msg_vrtx_018pk1ykbbxAYhyWUdP1bJoQ\",\n # \"content\": [\n # {\n # \"text\": \"To answer your question about affordable and good Italian restaurants\n # that are currently open in San Francisco....\n # ...\n\nWhat's next\n-----------\n\n\nTo search and filter code samples for other Google Cloud products, see the\n[Google Cloud sample browser](/docs/samples?product=generativeaionvertexai)."]]