# search-engine-tool **Repository Path**: babei/search-engine-tool ## Basic Information - **Project Name**: search-engine-tool - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2024-11-26 - **Last Updated**: 2024-12-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 开源搜索引擎API 因为OpenAI的横空出世,大家都习惯于使用OpenAI来问问题,但是OpenAI有一个致命的问题,就是只知道他训练的知识,而不知道新的知识,比如你问他今天深圳的天气如何,问他一些热点新闻,他是没有任何概念的。 ### 解决办法 通常我们为了让大模型“感知“到新的知识,我们需要将新的知识材料提供给他大模型学习,因此基于软件开发第一定律,没有什么是做不到的,如果做不到,就加一层,如果还是做不到,就在加一层,咋们这个层就是一个通过搜索获取当前最新信息的层,将摘要给到大模型学习,然后大模型基于这些个新学习的知识来回答你的问题。 ### 方案对比 为什么不直接使用 Google search API,而要自己造轮子,其原因就是一是因为巨硬们提供的API都是要付费的,免费计划也需要绑visa卡等,特别麻烦,因此还不如自己动手实现一个免费的。 ### 原理 原理很简单,使用 无头浏览器 去访问 Google,bing 等搜索网站,分析网页内容,提取摘要。 ## 已支持的搜索引擎 bing/google/duckduckgo/yahoo ## 使用方式 `npm i search-engine-tool` ```javascript const searchEngineTool = require('search-engine-tool'); //import searchEngineTool from "search-engine-tool" // module const query = '深圳市天气'; const engine = 'bing'; searchEngineTool(query, engine) .then(results => { console.log('搜索结果:'); results.forEach(result => { console.log('标题:', result.title); console.log('链接:', result.href); console.log('摘要:', result.abstract); console.log('----------------------'); }); }) .catch(error => { console.error('发生错误:', error); }); ``` # 效果预览 # 支持特性 - [x] Google - [x] Bing - [x] DuckDuckGo - [x] yahoo # 开源共建 让我们一起改进,把这个搜索API做得更加好用一些。 # 给我打 call 如果你觉得对你有用,就请我一杯咖啡。 收款码 # 加入群聊 添加我,注明自己 github 账号名,入群的目的,加入群聊,一起学习。 # License: MIT 本项目采用 MIT 许可证授权。