指南
实时搜索
聊天补全端点支持查询实时数据并将其纳入响应生成。通过此功能,您无需自行编排网络搜索和大型语言模型工具调用,即可直接从 API 获取包含实时数据的聊天响应。
实时搜索通过聊天补全端点提供。默认情况下,它处于关闭状态。客户可以控制他们访问的内容,我们不对由此产生的任何损害或责任负责。
欲了解更多详情,请参阅 search_parameters
(在API 参考 - 聊天补全中)。
有关搜索来源的示例,请跳转至数据来源和参数。
实时搜索定价
实时搜索费用为每使用 1,000 个来源 25 美元。这意味着每个来源的费用为 0.025 美元。
使用的来源数量可以在 response
对象中找到,其中包含一个名为 response.usage.num_sources_used
的字段。
启用搜索
要启用搜索,您需要在聊天补全请求中指定一个附加字段 search_parameters
,其中 "mode"
为 "auto"
、"on"
或 "off"
之一。
如果您想使用默认值进行实时搜索,仍然需要指定一个空的 search_parameters
。
或者如果使用 xAI Python SDK
"mode"
字段设置数据源的偏好
"off"
:禁用搜索,使用模型而不访问数据源中的附加信息。"auto"
(默认):实时搜索对模型可用,但模型自动决定是否执行实时搜索。"on"
:启用实时搜索。
模型通过 "search_parameters"
中的 "sources"
字段决定在所提供的数据源中使用哪个数据源。如果没有提供 "sources"
,实时搜索将默认使网络和 X 数据对模型可用。
例如,您可以发送以下请求,模型将决定是否在数据中搜索
返回引用
实时搜索端点支持以 URL 列表的形式返回响应中使用的所有数据源的引用。要启用此功能,您可以在搜索参数中设置 "return_citations": true
。此字段默认为 true
。
带引用的流式行为
在流式传输期间,您将像往常一样获取聊天响应块。引用将作为 URL 字符串列表在字段 "citations"
中仅在最后一个块中返回。这类似于用法数据随流式传输返回的方式。
设置搜索数据的日期范围
您可以通过指定 "from_date"
和 "to_date"
来限制使用的搜索数据的日期范围。这将数据限制在从 "from_date"
到 "to_date"
的期间内,包括这两个日期。
这两个字段都需要采用 ISO8601 格式,例如“YYYY-MM-DD”。如果您使用的是 xAI Python SDK,from_date
和 to_date
字段可以作为 datetime.datetime
对象传递给 SearchParameters
类。
这些字段也可以独立使用。只指定 "from_date"
时,使用的数据将是从 "from_date"
到今天的数据;只指定 "to_date"
时,使用的数据将是截至 "to_date"
的所有数据。
限制最大数据源数量
您可以通过 "max_search_results"
设置查询中将考虑的数据源的最大数量。默认限制为 20 个。
数据源和参数
在 "search_parameters"
的 "sources"
中,您可以添加一个潜在用于搜索的来源列表。每个来源都是一个对象,包含来源名称和该来源的参数,来源名称位于 "type"
字段中。
如果未指定任何内容,则默认使用的来源将是 "web"
、"news"
和 "x"
。
例如,以下代码启用了网页、X 搜索、新闻和 RSS 搜索
数据源和支持参数概述
数据源 | 描述 | 支持的参数 |
---|---|---|
"web" | 在网站上搜索。 | "country" 、"excluded_websites" 、"allowed_websites" 、"safe_search" |
"x" | 搜索 X 帖子。 | "included_x_handles" 、"excluded_x_handles" 、"post_favorite_count" 、"post_view_count" |
"news" | 从新闻来源搜索。 | "country" 、"excluded_websites" 、"safe_search" |
"rss" | 从提供的 RSS 提要中检索数据。 | "links" |
参数 "country"
(受 Web 和 News 支持)
有时您可能希望包含来自特定国家/地区的数据。为此,您可以在 "sources"
的 "web"
或 "news"
中添加国家的 ISO alpha-2 代码到 "country"
中。
参数 "excluded_websites"
(受 Web 和 News 支持)
使用 "excluded_websites"
从查询中排除网站。您最多可以排除五个网站。
"allowed_websites"
一起使用。参数 "allowed_websites"
(受 Web 支持)
使用 "allowed_websites"
仅允许在这些网站上进行查询。您最多可以包含五个网站。
"excluded_websites"
一起使用。参数 "included_x_handles"
(受 X 支持)
使用 "included_x_handles"
仅考虑来自给定 X 句柄列表的 X 帖子。您可以包含的最大句柄数为 10 个。
"excluded_x_handles"
一起设置。参数 "excluded_x_handles"
(受 X 支持)
使用 "excluded_x_handles"
可排除来自给定 X 句柄列表的 X 帖子。您最多可以排除 10 个句柄。
"included_x_handles"
一起设置。"grok"
句柄默认自动排除。如果您希望在搜索中包含来自 "grok"
的帖子,则必须在 "included_x_handles"
参数中明确传递。参数 "post_favorite_count"
和 "post_view_count"
(受 X 支持)
使用 "post_favorite_count"
和 "post_view_count"
来根据 X 帖子的收藏数和浏览量进行筛选。只会考虑至少达到指定收藏数/浏览量的帖子。
您可以设置这两个参数,以考虑至少达到指定收藏数和浏览量的帖子。
参数 "link"
(受 RSS 支持)
您还可以通过 { "links": ... }
从 RSS 提要 URL 列表中获取数据。目前只能添加一个 RSS 链接。
例如
参数 "safe_search"
(受 Web 和 News 支持)
安全搜索默认开启。您可以通过 "sources": [{..., "safe_search": false }]
为 "web"
和 "news"
禁用安全搜索。