MyShell ツールクラスボットの構築に関する概要とステップバイステップガイド
この記事は、ChatGPT を頻繁に使用するユーザー、特にそれを通じてカスタマイズされたニーズを解決したい読者を対象としています。記事はツールクラスボットの作成に焦点を当てており、ロールプレイングボットの創作には触れていませんが、基本的な原理は同じです。
簡単な概要:この記事では、AI 創作者プラットフォーム MyShell とは何か、プロンプト作成のコツ、そして MyShell ツールクラスボットの作成方法について説明します。
イントロダクション#
MyShell とは#
MyShell は、世界初の分散型生成 AI 創作者プラットフォームです。プラットフォーム内には、コミュニティが開発したさまざまな AI ネイティブアプリケーションがあり、その中には独自の個性と声を持つ AI キャラクター、新しい科目を学ぶためのインタラクティブな AI メンター、さらには画像や動画を作成する手助けをする AI アーティストが含まれています。
AI+Web3 分野の多くの研究報告は、MyShell をエージェントセクションの最優先選択肢として推奨しています:
なぜ MyShell を使用するのか、ChatGPT ではなく#
私は ChatGPT のヘビーユーザーでしたが、2023 年 4 月からは MyShell を使用してプログラミング、記事の編集、資料の検索、翻訳作業を行っています。
MyShell を使用する利点は以下の通りです:
- GPT 4.0 までのさまざまな AI 大モデルを一括で無料で使用できる
- 多くのユーザーが OpenAI プラットフォームでアカウント停止の問題に直面したことがある;MyShell を選択すれば、適切に使用する限りそのようなリスクを心配する必要がない。
- ボットを作成し、スポンサーシップを通じてポイント報酬を得ることができ、将来的にはシステム内で流通するトークンに交換可能
- フォーラムには多くの優れた創作テクニックが提供されており、コミュニティには良好な交流の雰囲気があり、AI 技術の学習に役立つ
- ChatGPT の月額 $20 の会費を支払う必要がなくなる
なぜツールクラスボットを作成することを学ぶべきか#
MyShell を使用していると、公式 API によって作成された "GPT 4" ボットの問題解決能力が時々不安定であることに気付きました。さらに、各対話でプロンプト(プロンプト:モデルがより正確で関連性のある出力を生成するために導くテキストまたは指示)を入力する必要があります。これにより、効率が大幅に低下し、操作の複雑さが増します。
他のコミュニティメンバーが開発したボットは、いくつかの問題を解決できますが、たとえば私は Mr.Rachelle を使用して新しい知識を学び、bestTranslater を使用して中国語から英語に翻訳していますが、より多くのニーズに合った適切なボットを見つけることができませんでした。私は多くのプロンプトエンジニアリングに関する資料を研究し、異なる機能を持つ複数のボットを作成し、成熟したプロセスを考案しました。私が作成したツールクラスボットには以下があります:
名称 | 作用 |
---|---|
OpenAICEO Sam Altman | 一言で簡潔に質問に答える |
Summary master | 言語スタイルを設定できる長文の要約 |
Cryptocurrency Analyst | 中国語で Web3 プロジェクトの紹介を要約 |
Tech writing editor | 技術的な文章を洗練させる |
Epic Code Dev | コードのデバッグと最適化 |
Web code expert | フロントエンドコードを作成 |
Think Tank | 複雑な問題についての多分野の専門家のディスカッション |
Song Lyrics Search | 文脈に合った中国語の歌詞を見つける |
Pass カードの役割#
現在のバージョンでは、無料ユーザーは 1 つのプライベートボットしか作成できません。公開ボットを作成するには、Genesis Pass を持っている必要があります。Genesis Pass を取得する最良の方法は、MyShell Genesis Pass Incubator イベントに参加することです。詳細は https://twitter.com/myshell_ai/status/1759941273509593166 をご覧ください。または、ETH を使用してマーケットで直接 Genesis Pass を購入することもできます。その価格はおおよそ 10 年間の ChatGPT 会費に相当します。
学習資料#
プロンプトエンジニアリングは新興学問であり、以下の核心概念を含みます:
- zero-shot
- few-shot
- chain-of-thought
- Prompt Chaining
これらの用語に不慣れな場合は、まず Prompt Engineering Guide と Prompt engineering by OpenAI を一通り閲覧することをお勧めします。オンラインで中国語版も見つけることができます。
MyShell の基本操作についてまだ理解していない場合は、product manual を参照してください。この記事では操作手順について詳述しません。
英語でプロンプトを書くことでトークン消費を減らすことができるため、私はすべて英語で書いています。
プロンプトは通常Markdown形式で書かれます。Markdown はインターネットの文法であり、大モデルが入力を理解するのに役立ちます。一部の記号には固定の意味があります。たとえば、<>
は注釈部分を示し、""" """
はユーザー入力を示すために使用されます。
創作プロセス#
通常、私は最初にボットのプロンプトを作成します。この Tech writing editor のプロンプトはオープンソースで、https://app.myshell.ai/widget/Fzu2Uz で見つけることができます。
役割の定義#
プロンプトを構築する際の核心ステップは、役割 = 説明 + 目的を定義することです。まず、ニーズに基づいてボットの役割と目標を決定します。説明部分は、会社の求人時に提供される職務説明に似ている必要があります。たとえば、「ライティングエディター」や「新メディアコピーライター」など、説明が正確であればあるほど良いです。「テクノロジー分野の技術ライティングエディター」と「ライティングエディター」では出力結果が異なります。目標は達成すべき作業であり、技術ライティングエディターにとって「文書を作成する」、「インスピレーションを提供する」、および「原稿を洗練させる」は完全に異なる作業目標です。GPT に直接尋ねることができます。「xxx」タイプの「xxx」にはどのような特徴がありますか?
または 「xxxx」を定義するために必要な重要な次元は何ですか?
と尋ね、返信からいくつかの形容詞を選んで役割を修飾します。また、求人説明書を作成する方法を参考にして、ボットに「目標」を設定するための「職務内容」を作成したり、「スキル」を与えるために「応募要件」を作成したりすることもできます。
あなたは、記事を改善するための簡潔な提案を提供し、提案された変更の理由を説明する技術ライティングエディターです。
## スキル
あなたは、さまざまな技術文書の原則に精通しており、以下に限定されません:
- 用語を一貫して使用する。
- 曖昧な代名詞を避ける。
- 受動態よりも能動態を好む。
- 曖昧な動詞よりも具体的な動詞を選ぶ。
- 各文を単一のアイデアに集中させる。
- 一部の長い文をリストに変換する。
- 不要な言葉を排除する。
- 順序が重要な場合は番号付きリストを使用し、順序が無関係な場合は箇条書きを使用する。
- リスト項目を並行に保つ。
- 番号付きリストの項目を命令形の言葉で始める。
- リストや表を適切に導入する。
- 段落の中心点を確立する素晴らしいオープニング文を作成する。
- 各段落を単一のトピックに集中させる。
- 聴衆が学ぶ必要があることを判断する。
- ドキュメントを聴衆に合わせる。
- ドキュメントの重要なポイントを文書の最初に確立する。
注意してください、## スキル
のようなテンプレートの書き方はプロンプトのメンテナンスを容易にするためのものです。連続した文章で表現することも、[Skills]
スタイルの見出しを使用して作成することもできます。
ルールの定義(オプション)#
ルールはボットが実行すべき操作と避けるべき行動を定義し、出力内容の文字数上限、使用言語、スタイル、トーンなどを設定できます。私は以下のプロンプトをよく使用します:
## ルール
- 入力言語と同じ言語で返信すること。 # 多言語サポート
- 常にすべての丁寧な言葉を省略すること。 # 丁寧さを減らす
- 返答が切り取られることを心配しないこと # 急いで要約しない
最初にプロンプトを書く際にルールを設定する必要はありません。出力内容に満足できない場合は、ルールを追加します。
ワークフローの定義(オプション)#
ワークフローは、プロンプトチェイニング技術を使用して大きなタスクを複数のサブタスクに分割し、各サブタスクの出力が順次次のサブタスクの入力となり、最終目標を段階的に達成します。Tech writing editor を定義する際に、私は以下のプロンプトを使用してこれらのステップを実現しました:記事をチェックして修正が必要な文を見つける -> 修正前、修正後、修正理由を順次出力する -> 評価を行う。
## ワークフロー
1. 記事を閲覧し、修正が必要な文を見つける
2. 修正前、修正後、理由のグループを順に出力する
3. 技術的なライティングの観点から記事を評価し、10点満点でスコアを付ける
条件判断、変数の割り当て、状態のリセットなどの複雑なワークフローが必要な場合は、関数型の記述スタイルを使用することもできます。参考にしてくださいMr. Ranedeer 。
例や出力形式の提供(オプション)#
プロンプトエンジニアリングの few-shot 技術を利用して、出力を指定された形式に合わせます。以下は、私が Tech writing editor で使用している出力形式であり、<> 内の説明を具体的な例に置き換えることもできます。
## outputFormat
1.
**O**: <修正が必要な段落>
**M**: <改善された段落>
**R**: <修正のために従うべきルール>
2.
**O**: <修正が必要な段落>
**M**: <改善された段落>
**R**: <修正のために従うべきルール>
……
---
<評価とスコア>
モデルの選択#
モデルを選択する際、私は優先的に GPT 4 Turbo を使用します。このモデルは、他の選択肢よりも知能が高く、1500 トークンを超える入力長をサポートしています。
純粋な中国語のコンテンツを処理する必要がある場合は、Claude V2 モデルを選択することでも良好な結果が得られます。
異なる使用シーンに応じて、他のパラメータを適切に調整できます。具体的な設定については、こちらの投稿の詳細説明を参照してください。
プロンプトの強化(オプション)#
複数回の対話の中で、モデルはプロンプト内で定義されたルールではなく、文脈情報に基づいて質問に回答することがあります。対話全体を通じて一貫したルールに従うことを確保するために、これらのルールを強化プロンプトに含めることができます。詳細は公式文書を参照してください。
その他の設定#
アバター: AvatarMagician を使用して個性的なアバターを作成します。
名前: ユーザーがホームページを通じて特定のキーワードでボットを見つけられるように設定します。この項目は長さ制限があり、SEO 効果があります。
NSFW: 内容が職場で見るには不適切かどうかをマークし、デフォルトは「いいえ」です。
タグ: 機能に応じて「ツール」または「学習」を選択し、「中国語」または「英語」を含むタグは音声機能が追加されていることを示します。
説明: ボットの目的と機能の概要を提供します。
イントロメッセージ: ユーザーにどのようにインタラクションするかを知らせるガイドメッセージを設計し、体験を向上させるために画像や外部リンクを追加できます。
音声 (TTS): ツールクラスボットには通常、音声機能を設定する必要はありません。
アプリ統合: Telegram を通じて接続し、外部トラフィックを引き寄せることをサポートします。
知識ベース: ボットに特定の分野のニッチな知識を教える必要がある場合は、まず GitBook を作成し、その内容を知識ベースに追加してボットが学習できるようにします。
バナー: BannerMagician を使用してバナーを作成します。クリエイターは、すべてのボットに個人の連絡情報を含むバナーを統一して使用し、ブランドの宣伝や潜在顧客の引き寄せを行うことができます。
スクリーンショット: 入力と出力を示すスクリーンショットをアップロードし、ユーザーにボットの機能を説明します。
テスト#
質の高いボットを作成するには、何度もテストと反復が必要です。以下は幾つかのヒントです:
- 固定内容を持つ複数の入力テキストを準備し、異なるモデル、パラメータ、プロンプトの効果をテストします。
- 満足のいく結果が得られたら、コミュニティに公開して他の人に試してもらい、フィードバックに基づいて適切な修正を行います。
宣伝#
プラットフォーム上の専門ユーザーや特定のツールクラスアプリケーションの活発度が低いため、ボットを必要とする分野のコミュニティにプロモーションを行い、使用頻度を増やすことをお勧めします。これにより、ポイント収益の向上が期待できます。MyShell 公式に評価を依頼することも検討してください。これにより、あなたのボットがホームページに表示される機会を得ることができます。
未来展望#
現在、ロールプレイング型ボットはこのプラットフォームでより高い収益を上げる可能性があります。しかし、将来のバージョンでは MyShell が多コンポーネントの組み合わせをサポートするようになり、強力な AI アプリケーションの構築が促進されるでしょう。同時に、インセンティブモデルも実際の効率問題を解決する実用的なボットに偏るでしょう。今からニーズを掘り起こし、自分のワークフローに合った実用的なボットを構築し、未来に備えましょう。
Claude3 プロンプト作成のコツ#
3 月 25 日の夜、MyShell は優れた性能を持つ Claude3 新モデルを導入しました。これは、ほとんどの元々 GPT-4 を使用していたシーンに適しています。同時に、Claude 公式も「プロンプトエンジニアリングガイド」を発表しました。以下は GPT シリーズとは異なるいくつかの重要なテクニックです:
- 明確な意味を持つ XML タグを使用して文書の部分、説明、および入力内容を区別します。たとえば、
<instructions>
、<example>
、および<input>
です。 <instructions>
を<input>
の後に置くことで、より良い効果が得られます。この目的を達成するために 強化プロンプトサフィックス オプションを使用できます。- 入力変数は二重波括弧
{{}}
でマークする必要があります。
以下の図に示すように、上記のテクニックを適用した Summary master には以下が含まれています:
<configuration> <rules> <example> <input> <instructions>
XML タグを使用してプロンプトを異なる部分に分割しています。<instructions>
タグを 強化プロンプトサフィックス に埋め込むことで、効果を高め、出力の一貫性を保つことを目的としています。{{CONFIGURATION}}
と{{DOCUMENT}}
を使用してユーザー入力の変数をマークし、<instructions>
内でマークされた変数を参照します。
まとめ#
これで、私のガイドに基づいて自分のツールボットを作成できるようになったはずです。助けが必要な場合は、MyShell Discord で script を検索し、@私にメンションするか、Twitter で私にメッセージを送ってください。
まだ MyShell に参加していない場合は、こちらのリンクからhttps://app.myshell.ai/invite/8cdbbd に登録し、7 日間のプレミアムパスを取得してください。