Feature proposal: TDesign React Chat UI, homepage chat entry, and admin-configurable AI assistant content
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 35/100
調査の方向性
AI 設定ページと /answer/api/v1/chat/completions SSE エンドポイントから始め、既存の assistant UI と TDesign React Chat の統合要件を確認します。homepage からの導線、ゲスト時の動作、設定可能なウェルカムテキスト、suggestions と prompts、streaming/thinking の表示、投票の動作、semantic_search fallback が、バックエンドの契約を変更せずにすべて機能すれば完了です。
索引モデルが issue の本文から書いたものです。
説明
Is your feature request related to a problem? Please describe
We self-host Answer as a community FAQ assistant. The current AI assistant works, but:
- The chat UI is minimal: no thinking-process display, no starter-question entry points, plain text bubbles.
- The assistant's opening content (welcome text, starter questions) is hardcoded in the frontend and cannot be adjusted by admins.
- The default system prompt advertises a
semantic_searchtool even when no vector search plugin is installed, so the model may call a tool that does not exist. - Visitors cannot use the assistant without an account, even when the admin would like to allow it on a public community site.
Describe the solution you'd like
-
New chat UI built on TDesign React Chat (
@tdesign-react/chat, MIT-licensed): streaming markdown answers, a collapsible thinking block for reasoning models, tappable suggestion chips, and a sender with a stop button. Answer's backend contract (/answer/api/v1/chat/completions, SSE) stays unchanged — a thin adapter mapsdelta.contentto a markdown block anddelta.reasoning_contentto a thinking block, and keeps per-message voting/replay working. -
Admin switches on the AI settings page
- Show AI assistant on homepage: a floating chat entry that reuses the same component.
- Allow guests to use the homepage AI assistant: chat completions moves behind a guest gate; guest conversations stay client-side only and voting is disabled for them.
-
Admin-configurable assistant content (AI settings page)
- Welcome text shown when a conversation starts.
- A suggested-questions list (one per line) rendered as chips; empty falls back to built-in i18n defaults.
- The system prompt (zh/en,
%sas the question placeholder). The backend already storesprompt_config; only the admin UI is missing. Saving the form will also stop silently resetting stored prompts to the built-in defaults.
-
Small related fix: strip the
semantic_searchline from the default prompt when no vector search plugin is enabled.
Describe the alternatives you've considered
Incrementally extending the existing custom UI. That is possible, but a maintained chat component library provides streaming, thinking and suggestion primitives out of the box and reduces the custom code Answer has to maintain. Vision/image input is intentionally out of scope for this feature.
I have a working implementation on my fork and will submit a PR referencing this issue.
- 主要言語
- Go
- スター
- 15.7k
- フォーク
- 1.4k
- 平均マージ
- 1日 20時間
- マージ済み PR(30日)
- 6
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
apache/answer のほかの issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 65/100
-
Hardening: cap the invite_user list size in UpdateQuestionInviteUser to bound notification fan-out オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 72/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 84/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 88/100
-
Gravatar hash is computed from the un-lowercased email, so mixed-case accounts render an identicon オープン
難易度 2/5 1〜3時間 初心者へのやさしさ 85/100
似ている issue
-
bug github_actions
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
registrystack/registry-stack#1393 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
JakeChampion/lang#10213 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
oasisprotocol/oasis-sdk#2523 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100