用 Qryma 搜索 API 快速构建 AI 助手的网页搜索能力

7 阅读4分钟

实践:为 AI 助手添加实时网络搜索能力

场景描述

在开发本地 AI 助手时,我遇到了一个常见问题:大语言模型的训练数据有截止日期,无法回答需要最新信息的问题。例如:

  • "2025 年最新发布的 AI 模型有哪些?"
  • "Python 3.14 有哪些新特性?"
  • "最近一周人工智能领域有什么重要新闻?"

这些问题都需要实时联网搜索才能给出准确答案。

解决方案

我使用 qryma-search 技能,为我的 AI 助手集成了实时网络搜索功能。这个技能提供快速、低成本的 AI 搜索 API,支持多种输出格式(Markdown/JSON/Brave),非常适合集成到 LLM 应用中。

实施步骤

1. 准备工作

注意:当前项目就是 qryma-search skill 的源代码仓库github.com/qryma-ai/sk…

你可以:

方案 A:直接使用项目代码(推荐用于测试和开发)

# 克隆项目
git clone https://github.com/qryma-ai/skills.git
cd skills
pip install -r requirements.txt

方案 B:作为 Skill 安装到你的项目(推荐用于生产环境)

# 在你的项目中安装
npx skills add https://github.com/qryma-ai/skills

2. 配置环境变量

在项目根目录创建 .env 文件:

QRYMA_API_KEY=ak-your-api-key-here

qryma.com 获取免费的 API Key。

3. 封装搜索功能

基于项目中的 search_core.py,我创建了一个简单的集成脚本 ai_search_assistant.py

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
AI 助手搜索集成示例
演示如何将 qryma-search 集成到 AI 助手中

当前项目是 qryma-search 技能的源代码仓库,
代码直接使用本地的 `scripts.search_core` 模块。
"""
import sys
import os
sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))

from scripts.search_core import QrymaSearchCore

class AIAssistantWithSearch:
    """带搜索功能的 AI 助手"""
    
    def __init__(self):
        self.search_core = QrymaSearchCore()
        self.search_triggers = [
            "最新", "最近", "今天", "本周", "本月",
            "如何", "怎样", "教程",
            "搜索", "查找", "查询",
            "2025", "2026", "2027"  # 年份关键词
        ]
    
    def needs_search(self, query: str) -> bool:
        """判断是否需要搜索"""
        query_lower = query.lower()
        return any(trigger in query_lower for trigger in self.search_triggers)
    
    def search_and_format(self, query: str, max_results: int = 3) -> str:
        """执行搜索并格式化结果"""
        try:
            result = self.search_core.search(
                query=query,
                max_results=max_results,
                mode="fulltext"
            )
            
            formatted = f"🔍 搜索结果(关键词:{query})\n\n"
            
            for i, item in enumerate(result["results"], 1):
                formatted += f"### {i}. {item['title']}\n"
                formatted += f"🔗 {item['url']}\n"
                formatted += f"{item['content']}\n\n"
            
            return formatted
        except Exception as e:
            return f"搜索失败:{str(e)}"
    
    def query(self, user_input: str) -> str:
        """处理用户查询"""
        if self.needs_search(user_input):
            return self.search_and_format(user_input)
        else:
            return "这是一个不需要搜索的问题,我可以直接回答您。"

def main():
    """主函数"""
    print("🤖 AI 助手(带搜索功能)")
    print("输入 'quit' 退出\n")
    
    assistant = AIAssistantWithSearch()
    
    while True:
        try:
            user_input = input("您的问题:").strip()
            
            if user_input.lower() in ["quit", "exit", "退出"]:
                print("👋 再见!")
                break
            
            if not user_input:
                continue
            
            response = assistant.query(user_input)
            print(f"\n{response}\n")
            
        except KeyboardInterrupt:
            print("\n👋 再见!")
            break
        except Exception as e:
            print(f"错误:{e}\n")

if __name__ == "__main__":
    main()

4. 测试运行

运行脚本测试搜索功能:

python ai_search_assistant.py

示例对话:

🤖 AI 助手(带搜索功能)
输入 'quit' 退出

您的问题:2025 年最新发布的 AI 模型有哪些?

🔍 搜索结果(关键词:2025 年最新发布的 AI 模型有哪些)

### 1. Claude 3.5 Sonnet
🔗 https://www.anthropic.com/news/claude-3-5-sonnet
Anthropic 在 2025 年发布了 Claude 3.5 Sonnet,这是其最新的大语言模型,在编码、数学推理和理解上下文方面有显著提升,支持更长的输入和更精确的回答。

### 2. GPT-4o mini
🔗 https://openai.com/index/gpt-4o-mini-announcement
OpenAI 于 2025 年推出了 GPT-4o mini,这是其最新的轻量级多模态模型,提供了出色的性价比,在移动设备上也能良好运行。

### 3. Llama 3.1
🔗 https://ai.meta.com/blog/llama-3-1/
Meta 在 2025 年发布了 Llama 3.1,包括 8B、70B、405B 和 1T 参数版本,支持多模态输入,在代码生成和长文本处理方面有显著改进。

实际效果

集成搜索功能后,我的 AI 助手现在可以:

✅ 回答需要最新信息的问题,如"2025 年最新 AI 新闻"
✅ 查找技术教程和文档,如"Python 异步编程教程"
✅ 获取实时事件信息,如"今天有什么科技发布会"
✅ 对比不同技术方案,如"React vs Vue 2025 对比"

总结

通过 qryma-search 技能,我在不到 100 行代码的情况下,成功为我的 AI 助手添加了实时网络搜索能力。这个技能的优势在于:

  • 🚀 响应速度快(<1秒)
  • 💰 免费额度充足
  • 📝 输出格式友好(支持 Markdown)
  • 🔧 易于集成

如果你也在构建 AI Agent 或智能助手,强烈推荐尝试 qryma-search