# プログラマー以外でもDiscourse AI - AIボットを使ってプラグインやテーマを作成するのはどれくらい難しいでしょうか

**URL:** <https://meta.discourse.org/t/how-hard-would-it-be-for-non-programmers-to-be-able-to-use-the-discourse-ai-ai-bot-to-help-them-create-plugins-and-or-themes/277345>\
**Category:** Development\
**Tags:** ai, ai-bot\
**Created:** [2023 年 8 月 31 日午前 9:21 UTC](https://meta.discourse.org/t/how-hard-would-it-be-for-non-programmers-to-be-able-to-use-the-discourse-ai-ai-bot-to-help-them-create-plugins-and-or-themes/277345 "2023-08-31T09:21:13Z")\
**Posts on this page:** 1\
**Showing post:** 11

<div class="post-metadata">

**Author:** ![EricGT](https://avatars.discourse-cdn.com/v4/letter/e/f1d935/32.png) [@EricGT](https://meta.discourse.org/u/EricGT)\
**Post date:** [2023 年 9 月 1 日午前 8:05 UTC](https://meta.discourse.org/t/how-hard-would-it-be-for-non-programmers-to-be-able-to-use-the-discourse-ai-ai-bot-to-help-them-create-plugins-and-or-themes/277345/11 "2023-09-01T08:05:20Z")

</div>

> [@sam](#):
>
> I am borderline on just bumping lola to use 32k tokens here

個人的にはそれに同意しません。

しかし、あなたの次の発言には同意します。

> [@sam](#):
>
> The current workaround/solution for this problem is function calling, you get GPT-4 to reason about what information it will need and then a few round trips later it finds the right context. This can involve searching (either using embeddings or just pure keyword search)

サムが指摘していることを拡張します。私が使用している実用的な回避策は次のとおりです。これは、大きなコンテキストウィンドウを必要とすると思われる他のタスクにも役立ちますが、実際にはそうではありません。

まず、コンテキストウィンドウという用語を知らない人のために、これはLLMがプロンプトと完了の両方に使用できるトークンの数です。これ以上詳しく説明しませんが、用語に慣れるためにLearn Prompting ([Prompt Engineering Guide: The Ultimate Guide to Generative AI](https://learnprompting.org/docs/intro)) を読むことをお勧めします。

LLMサイト（OpenAIなど）で繰り返し出てくる古典的な質問を次に示します。

> コンテキストウィンドウが本全体を保持するには小さすぎる場合、ChatGPTを使用して本を作成するにはどうすればよいですか？

解決策は、本全体を1つのプロンプトで取得しようと考えるのではなく、部分に分割することです。次にユーザーが試すのは、最初の20ページを書き、次に次の20ページを書くようにプロンプトを作成することですが、これも実際的ではありません。これを行う方法は、章ごとにトップダウンで行うことです。まず、本の概要または章のタイトル付きの目次を与える高レベルのプロンプトを使用し、次に次のプロンプトで第1章を要求します。次に、第1章の要約を作成し、それを使用して第2章を要求します。次の章を作成するために必要な情報のみの要約を作成し続けることで、より大きな作品をより小さなコンテキストウィンドウで作成できます。

次に、ソフトウェアを作成する場合も同様ですが、プロセスをシーケンスに分割する代わりに、関数呼び出しのツリーに分割します。したがって、まず高レベルの関数を要求し、次に必要に応じてサポート関数の入力を開始します。また、必要なものが本当にわかっている場合は、ボトムアップで行うこともできます。パーサーを作成する人は、トップダウンまたはボトムアップパーサーに精通しているはずです。

もう1つの一般的なプログラミングタスクは、コードの更新または変更ですが、これも、プロンプトを作成するときに関数全体ではなく関数ヘッダーを提供し、変更が必要な関数のコードのみを要求すれば、小さなコンテキストウィンドウで簡単に実行できます。

私が学んだその他のことのいくつかは、一度に1つの関数のみを扱い、100行のコードを超えないことです。比較的コンテキストウィンドウが小さい初期バージョンのChatGPTでこれを行ったところ、いくつかの優れたコードを作成でき、Prolog、JavaScript、HTML、JSONも含まれていました。

これらすべては素晴らしいですが、Discourseが将来Discourseコードを作成するためのボットを提供することを期待していません。

> [@sam](#):
>
> especially stuff like semantically searching through our code base and so on.

まだ試していません。別の投稿で述べたように、私はRubyやRuby-on-Rails、および使用されているJavaScriptテクノロジーのスキルがないため、良い結果を得るための正しい用語さえわかりませんが、試してフィードバックを提供することを念頭に置いておきます。

> [@sam](#):
>
> Making progress slowly in this uncharted territory…

それは私の本ではプラスです。

---

_[View the full topic](https://meta.discourse.org/t/how-hard-would-it-be-for-non-programmers-to-be-able-to-use-the-discourse-ai-ai-bot-to-help-them-create-plugins-and-or-themes/277345)._
