Duckduckgo AI Chat 提供了免费的 gpt-4o-mini,我开发了一个小库 duckduckgo-ai-chat 用来调用 Duckduckgo AI Chat 的 API。
注意事项
Duckduckgo AI Chat 是有针对 IP 的额度限制的,不要滥用。
小故事
在 jsr.io 上的 duckduckgo-ai-chat 之所以第一个版本是 2.0.0,是因为 1.0.0 基于 Bun 编写发布在 npm 上,发完才发现 bun 不符合我的 all-in-one 需求,所以就换 Deno 了…
顺便发到了 Deno 团队新搞的 jsr.io 上,不仅支持用不同包管理器安装,而且还支持在任何运行时上跑。
兼容性
除了 Bun,其他运行时都没问题。
安装
1
2
3
4
5
6
7
| npx jsr add @mumulhl/duckduckgo-ai-chat
# or
pnpm dlx jsr add @mumulhl/duckduckgo-ai-chat
# or
yarn dlx jsr add @mumulhl/duckduckgo-ai-chat
# or
deno add @mumulhl/duckduckgo-ai-chat
|
使用示例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| import { initChat } from "@mumulhl/duckduckgo-ai-chat";
// 初始化,可选模型有 gpt-4o-mini, claude-3-haiku-20240307, meta-llama/Llama-3-70b-chat-hf, mistralai/Mixtral-8x7B-Instruct-v0.1
const chat = await initChat("gpt-4o-mini");
// 一次性获取完整的回复
let message = await chat.fetchFull("Hello");
console.log(message)
// 重新回复
chat.redo()
message = await chat.fetchFull("Hello");
console.log(message)
// 获取流式回复
const stream = chat.fetchStream("Hello");
for await (let data of stream) {
console.log(data)
}
|