SearxSearchWrapper#
- class langchain_community.utilities.searx_search.SearxSearchWrapper[source]#
基础类:
BaseModel
Searx API的封装器。
要使用,您需要通过传递命名参数
searx_host
或导出环境变量SEARX_HOST
来提供searx主机。在某些情况下,您可能希望禁用SSL验证,例如如果您在本地运行searx。您可以通过传递命名参数
unsecure
来实现这一点。您还可以将主机URL方案传递为http
以禁用SSL。示例
from langchain_community.utilities import SearxSearchWrapper searx = SearxSearchWrapper(searx_host="http://localhost:8888")
- Example with SSL disabled:
from langchain_community.utilities import SearxSearchWrapper # note the unsecure parameter is not needed if you pass the url scheme as # http searx = SearxSearchWrapper(searx_host="http://localhost:8888", unsecure=True)
通过解析和验证来自关键字参数的输入数据来创建一个新模型。
如果输入数据无法验证以形成有效模型,则引发 [ValidationError][pydantic_core.ValidationError]。
self 被显式地设为仅位置参数,以允许 self 作为字段名称。
- param aiosession: Any | None = None#
- param categories: List[str] | None = []#
- param engines: List[str] | None = []#
- param headers: dict | None = None#
- param k: int = 10#
- param params: dict [Optional]#
- param query_suffix: str | None = ''#
- param searx_host: str = ''#
- param unsecure: bool = False#
- async aresults(query: str, num_results: int, engines: List[str] | None = None, query_suffix: str | None = '', **kwargs: Any) List[Dict] [source]#
异步查询并返回JSON结果。
使用aiohttp。更多信息请参见results。
- Parameters:
query (str)
num_results (int)
engines (List[str] | None)
query_suffix (str | None)
kwargs (Any)
- Return type:
列表[字典]
- async arun(query: str, engines: List[str] | None = None, query_suffix: str | None = '', **kwargs: Any) str [来源]#
run的异步版本。
- Parameters:
query (str)
engines (List[str] | None)
query_suffix (str | None)
kwargs (Any)
- Return type:
字符串
- results(query: str, num_results: int, engines: List[str] | None = None, categories: List[str] | None = None, query_suffix: str | None = '', **kwargs: Any) List[Dict] [来源]#
通过Searx API运行查询并返回带有元数据的结果。
- Parameters:
query (str) – 要搜索的查询。
query_suffix (str | None) – 附加到查询的额外后缀。
num_results (int) – 限制返回结果的数量。
engines (List[str] | None) – 用于查询的引擎列表。
categories (List[str] | None) – 用于查询的类别列表。
**kwargs (Any) – 传递给searx API的额外参数。
- Returns:
- {
snippet: 结果的描述。 title: 结果的标题。 link: 结果的链接。 engines: 用于结果的引擎。 category: 结果的Searx类别。
}
- Return type:
包含以下键的字典
- run(query: str, engines: List[str] | None = None, categories: List[str] | None = None, query_suffix: str | None = '', **kwargs: Any) str [source]#
通过Searx API运行查询并解析结果。
您可以向searx查询API传递任何其他参数。
- Parameters:
query (str) – 要搜索的查询。
query_suffix (str | None) – 附加到查询的额外后缀。
engines (List[str] | None) – 用于查询的引擎列表。
categories (List[str] | None) – 用于查询的类别列表。
**kwargs (Any) – 传递给searx API的额外参数。
- Returns:
查询的结果。
- Return type:
字符串
- Raises:
ValueError – 如果查询发生错误。
示例
这将向qwant引擎发出查询:
from langchain_community.utilities import SearxSearchWrapper searx = SearxSearchWrapper(searx_host="http://my.searx.host") searx.run("what is the weather in France ?", engine="qwant") # the same result can be achieved using the `!` syntax of searx # to select the engine using `query_suffix` searx.run("what is the weather in France ?", query_suffix="!qwant")
使用 SearxSearchWrapper 的示例