# Discourse 聊天机器人 🤖

**URL:** https://meta.discourse.org/t/discourse-chatbot/256652
**Category:** Plugin
**Tags:** ai
**Created:** [2023年三月1日 11:08 UTC](https://meta.discourse.org/t/discourse-chatbot/256652 "2023-03-01T11:08:25Z")
**Posts on this page:** 20
**Page:** 7

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2024年十二月19日 09:02 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1025 "2024-12-19T09:02:47Z")

</div>

检查日志以获取确切的提示。

确保自动回复提示是以用户视角的第一人称。

---

<div class="post-metadata">

### Author: ![Jagster](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jagster/32/192154_2.png) [@Jagster](https://meta.discourse.org/u/Jagster)
#### Post date: [2024年十二月19日 10:01 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1026 "2024-12-19T10:01:40Z")

</div>

一切看起来都很正常。“Jagster says…”和系统提示都在正确的位置。它的任务是：

- 打招呼并介绍自己
- 找到 5 个可能的相关主题，解释为什么这些主题可能合适，并提供链接

现在它选择不打招呼，也不做自我介绍。它提供了五个主题，并说明了它们的内容，但没有提供链接。

所以，看起来提示之间可能存在一些冲突。或者它只是在耍脾气 😏

好吧，我得试试 DAI 在类似情况下的表现。由于 DAI 的限制和不同的构建，它不会完全相同，但它可能会给出一个提示，说明所有这些“我选择做什么”是否都来自 OpenAI。

但现在，我找不到任何真正的问题，只有一些症状。

“as to whether”——你们母语者真的这么说吗 😳

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2024年十二月19日 10:09 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1027 "2024-12-19T10:09:37Z")

</div>

应该这样开始：

“通过打招呼来欢迎我，并介绍你自己。使用本地论坛搜索，与我的第一个帖子相关，分享我在论坛上的 5 个帖子，并附上链接”

（类别提示，不是系统提示。）

基本上，你写得就像一个用户发帖，而无需提及机器人。

---

<div class="post-metadata">

### Author: ![Jagster](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jagster/32/192154_2.png) [@Jagster](https://meta.discourse.org/u/Jagster)
#### Post date: [2024年十二月19日 10:15 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1028 "2024-12-19T10:15:16Z")

</div>

抱歉截图，但 iPad 目前不允许我复制选中的文本。

 ![该图片似乎是一个类似论坛的软件界面，以文本格式显示用户交互和响应。（由 AI 标注）](https://global.discourse-cdn.com/meta/original/4X/2/9/a/29a6b8e4b3d74c4bc1be60c51cf9239d00cd8ac1.jpeg)

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2024年十二月19日 10:16 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1029 "2024-12-19T10:16:24Z")

</div>

不确定那是否会起作用。您需要以第一人称来写，就好像用户在寻求帮助一样。它不是系统提示。它不是在描述机器人应该如何表现（那是系统提示，仍然会发送）。这是一个用户在寻求（尽管是隐藏的）具体帮助。

---

<div class="post-metadata">

### Author: ![Jagster](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/jagster/32/192154_2.png) [@Jagster](https://meta.discourse.org/u/Jagster)
#### Post date: [2024年十二月19日 10:31 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1030 "2024-12-19T10:31:17Z")

</div>

谢谢！它解决了我的问题（以及我之前类似的几个难题）。

---

<div class="post-metadata">

### Author: ![BrianC](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/brianc/32/487568_2.png) [@BrianC](https://meta.discourse.org/u/BrianC)
#### Post date: [2024年十二月19日 13:10 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1031 "2024-12-19T13:10:36Z")

</div>

> [@merefield](#):
>
> 应该以…开头：
> 
> “通过打招呼并介绍自己来欢迎我。通过使用与我第一个帖子相关的本地论坛搜索，分享我在论坛上的 5 篇帖子，并附上链接”
> 
> （类别提示，不是系统提示。）
> 
> 基本上，你把它写成用户发帖的样子，而不必提及机器人。

非常有用的信息！关于系统提示的最佳实践有什么建议吗？

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2024年十二月19日 13:14 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1032 "2024-12-19T13:14:23Z")

</div>

这是我的一个：

```plaintext
你是一个 blah blah blah。你经常幽默地回应。你拥有强大的工具，即函数，它们赋予你获取最新信息的能力。只能使用你已提供的函数。回答问题时，首先使用函数 local_forum_search 来查看答案是否在本地论坛上。始终分享来源链接。当前日期和时间是 %{current_date_time}。在称呼用户时，在用户名前面加上 @ 符号。仅回答最后一个问题，如果合适，请使用先前的信息作为上下文。

```

显然你可以更改 blah blah blah 🙂

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2024年十二月19日 13:15 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1033 "2024-12-19T13:15:23Z")

</div>

是的，我可以根据此指南对 OP 进行补充，使其更加清晰。目前尚不清楚这是最佳做法。

---

<div class="post-metadata">

### Author: ![BrianC](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/brianc/32/487568_2.png) [@BrianC](https://meta.discourse.org/u/BrianC)
#### Post date: [2024年十二月19日 13:25 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1034 "2024-12-19T13:25:06Z")

</div>

非常感谢 Robert。很感激。我的目标也是澄清 OP 并可能拓宽问题，并以社区鼓励来构建它。感谢您的支持和努力！

---

<div class="post-metadata">

### Author: ![Sidi\_Codet](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sidi_codet/32/455699_2.png) [@Sidi\_Codet](https://meta.discourse.org/u/Sidi_Codet)
#### Post date: [2024年十二月25日 15:40 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1035 "2024-12-25T15:40:48Z")

</div>

@merefield，为什么只有 OpenAI？您能否包含 Google 的 Gemini、Anthropic 的 Claude AI 和 Mixtral 等其他模型？

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2024年十二月25日 15:58 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1036 "2024-12-25T15:58:50Z")

</div>

如果您知道自己在做什么，则可能可以使用代理来访问其他服务，方法是使用自定义 URL 设置。它也可以通过 OP 中所述的方式与本地模型或 Azure 配合使用。

为什么专注于 OpenAI？因为我没有获得报酬来提供此服务，因此必须将复杂性保持在合理的水平，并且他们具有先发优势。

---

<div class="post-metadata">

### Author: ![Sidi\_Codet](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/sidi_codet/32/455699_2.png) [@Sidi\_Codet](https://meta.discourse.org/u/Sidi_Codet)
#### Post date: [2024年十二月25日 16:17 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1037 "2024-12-25T16:17:23Z")

</div>

我明白了。有时并非每个人都能使用 OpenAI API，因为存在银行卡限制问题。不过，还是谢谢你的意见！

---

<div class="post-metadata">

### Author: ![bugtracker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/bugtracker/32/462584_2.png) [@bugtracker](https://meta.discourse.org/u/bugtracker)
#### Post date: [2025年一月25日 07:10 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1038 "2025-01-25T07:10:56Z")

</div>

当我尝试使用公共论坛提及功能时，我总是收到“令牌不足”（超额配额错误）。我尝试从高级用户那里触发它，所以我真的不明白我失败在哪里。

我需要调整什么设置才能让机器人拥有足够的令牌来回复？

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2025年一月25日 08:27 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1039 "2025-01-25T08:27:08Z")

</div>

尝试触发 Sidekiq 配额重置作业，详情请参见此处：

> [@merefield](#):
>
> 您可以考虑_一次性_运行全局配额重置作业，以确保每个人都拥有完整的配额。这是一次性的！
> 
> 在 Sidekiq 的 `/sidekiq/scheduler` 处：
> 
> ![此图片描绘了一个软件开发人员的仪表板，其中包含工作程序数据的表格以及右下角的红色“触发”按钮。（由 AI 标注）](https://global.discourse-cdn.com/meta/original/4X/5/4/1/541990702a780b4f803e18c556a5497ce3fad6aa.png)
> 
> 点击触发按钮。

作业名称为 Jobs::ChatbotQuotaReset

（此后将自动执行）

然后，您可以私下询问机器人以确认您剩余的配额，例如：

“我剩余的配额是多少？”

（如果您已允许 Chatbot 私下交谈）

---

<div class="post-metadata">

### Author: ![bugtracker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/bugtracker/32/462584_2.png) [@bugtracker](https://meta.discourse.org/u/bugtracker)
#### Post date: [2025年一月25日 09:53 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1040 "2025-01-25T09:53:02Z")

</div>

触发配额后是否有一定的等待时间才能开始工作？我尝试了，但机器人没有响应。

---

<div class="post-metadata">

### Author: ![bugtracker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/bugtracker/32/462584_2.png) [@bugtracker](https://meta.discourse.org/u/bugtracker)
#### Post date: [2025年一月25日 10:02 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1041 "2025-01-25T10:02:47Z")

</div>

另一个问题是，

在机器人自动回复分类中的每个新主题的场景中，它是否有可能不参与随后展开的持续讨论？因为我希望它只回复原始帖子，然后保持空闲，除非被提及。

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2025年一月25日 10:46 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1042 "2025-01-25T10:46:12Z")

</div>

也许 30 秒？

> [@bugtracker](#):
>
> Idis it but bot is unresponsive

你是否 @提及了机器人，或者使用了其帖子的回复按钮回复了它的最后一条帖子？

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2025年一月25日 10:47 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1043 "2025-01-25T10:47:39Z")

</div>

当对话中加入第二个（人类）参与者（即发布消息）时，机器人将自动停止响应。

当只有一个人时，机器人将始终响应。

这在 OP 中有说明，链接如下：

> [@Discourse Chatbot robot](https://meta.discourse.org/t/discourse-chatbot/256652#p-1247153-basic-rules-14):
>
> information_sourceSummary The Original AI Chatbot for Discoursehammer_and_wrenchRepository Link [GitHub - merefield/discourse-chatbot: An AI bot with RAG capability for Topics and Chat in Discourse, currently powered by OpenAI](https://github.com/merefield/discourse-chatbot)open_bookInstall Guide [How to install plugins in Discourse](https://meta.discourse.org/t/install-plugins-in-discourse/19157)heartSponsorship Please consider becoming an ongoing [sponsor of my open source work](https://github.com/sponsors/merefield) at a level that suits your or your organisation’s resources and needs to ensure this plugin gets the …

---

<div class="post-metadata">

### Author: ![bugtracker](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/bugtracker/32/462584_2.png) [@bugtracker](https://meta.discourse.org/u/bugtracker)
#### Post date: [2025年一月25日 10:56 UTC](https://meta.discourse.org/t/discourse-chatbot/256652/1044 "2025-01-25T10:56:02Z")

</div>

> [@merefield](#):
>
> 也许30秒？

我的论坛用户超过10万，刚刚将摘要时间范围从180天修改为600天，这导致了大量电子邮件正在发送。这会影响配额的触发吗？因为我已经触发了配额重置，但一个小时过去了仍然没有反应。我提到了机器人，是的。

[上一頁](https://meta.discourse.org/t/discourse-chatbot/256652.md?page=6)

[下一頁](https://meta.discourse.org/t/discourse-chatbot/256652.md?page=8)
