1 ポイント 投稿者 GN⁺ 2024-02-02 | 1件のコメント | WhatsAppで共有
  • 空欄を埋めて ChatGPTプロンプトを組み立てるシンプルなWebページ
  • テンプレートは役割、必要な成果物、実行方法、条件、依頼事項、最終出力形式を順に入力する構成
  • 例示エリアも同じ構造を繰り返し、完成したプロンプトの形を見せるようになっている
  • 現時点では実際の例は空で、「builderを使ってプロンプトを作成せよ」という案内だけが表示される
  • 確認できる機能は複雑な設定ではなく、プロンプトビルダー用の文章テンプレートに近い

空欄ベースのプロンプト構成

  • ページは LLM Prompting というタイトルの下で、ユーザーが文の断片をつなぎ合わせてプロンプトを作る形式
  • 入力フローは次の文の断片で構成される
    • Act like a ,
    • I need a ,
    • you will ,
    • in the process, you should ,
    • please ,
    • input the final result in a ,
    • here is an example:

現在の表示状態

  • 同じプロンプト構造が 例示エリア にも繰り返されている
  • 実際の例示内容はまだ埋められていない
  • 最後には [Empty prompt, use the builder to create a prompt] という案内が表示される
  • 提供されている内容だけを見ると、中心機能は 空欄ベースのプロンプト生成テンプレート である

1件のコメント

 
GN⁺ 2024-02-02
Hacker News の意見
  • 最近でも カスタムプロンプトをよく使っているのか気になる
    以前は結果がずっと良くなったので、プロンプトエンジニアリングやカスタムプロンプト作成にかなりのめり込んでいたが、アップデートのたびに ChatGPT の注意を効果的に誘導する方法が変わり、だんだん面倒になった
    今はたまにカスタム ChatGPT を使うが、ほとんどは標準の ChatGPT を使っていて、品質差も小さくなった感じがする
    長いプロンプトは応答時間が長くなりすぎるので、遅いけれどより良い答えよりも、速い 十分に良い答えを好むようになった。一度で完璧な答えを得ようとするより、不足していればフォローアップ質問をするほうが簡単

    • もう「プロンプトエンジニアリング」より プロンプトの勘をつかむこととして見るべきだと思う。実際のプロンプトエンジニアリング、たとえば評価を付けた A/B テストのようなものは驚くほど少なく、そもそも適切な考え方ではない場合も多い
      ChatGPT に対する直感を養い、ChatGPT がよりうまく動作するには何が必要かを 心の理論のように考えてみる必要がある
      たいていはプロンプトを編集する方法を知っているだけで ChatGPT をうまく使える。これは実質的に隠れ機能に近く、アプリでは今でも使えない
      AI とやり取りする方法を学ぶには、しらふが最適とは限らないかもしれないので、強いカクテルや大麻も勧めたいところだが、この最後の主張には対照実験が必要だ
    • 同じ経験だ。実際のユーザーチャットでモデルを継続的に ファインチューニングしているはずで、そのため移動中に適当に書くプロンプトもますますよく理解するようになっている気がする
    • 入力が長くなるほど応答が遅くなるという点が興味深い。私は速度低下をまったく感じなかったが、もしかして ChatGPT 無料プランだけの話なのか気になる
    • ChatGPT4 が Bing にアクセスする機能をオフにできなくなったあと、アカウントを解約した
    • 「プロンプトエンジニアリング」に深く関わっていたとは思わない。プロンプトエンジニアリングは昔も今も、そしてこれからも、実体のある分野ではないと思う
  • この分野に入ってきたばかりの人にとって非常に有用なものにするには、いくつか必要なものがある。すでに一部は実装されていて良い
    事前指示と後処理プロンプトの両方について、複数の テンプレートを提供するとよさそうだ。たとえば出力を JSON、リスト、制限付き CSV のような特定形式にできるだけ従わせる実証済みのプロンプトや、メインプロンプトで基本的な脱獄をできるだけ防ぐ入力テンプレートのようなものだ
    毎日 ChatGPT を扱っている人たちがすでに見つけている最適なウォームアップ方法や、予期しない出力の暴走を防ぐ方法を最初から身につけるには時間がかかるので、信頼できるテンプレートがあれば入門者には素晴らしいだろう

    • 有効な JSON が必要な API 応答は JSON モードでリクエストできる: https://platform.openai.com/docs/api-reference/chat/create#c...
    • 応答を有効な JSON として受け取りたいときは、このような強い指示がかなりよく効いた
      「結果はすべての内容を含み、有効な JSON でなければならない。いかなる場合もこの形式から外れてはならない。すべての値は完全でなければならず、一つも欠けてはならない。JSON の結果以外のテキストを追加してはならない。」
      単に有効な JSON を求めるだけでは常に期待どおりにはならず、たとえば GPT-4 API が書式を追加することもあったので、どんどん細かく指示するようになった
  • 今 ChatGPT 関連の作業にかなり深く入り込んでいて、週に 1〜2 個のアプリを作っているので、少し偏っているかもしれない
    想定ユーザーがプロンプトベースの 大規模言語モデルに慣れていない人なら、その人にとっては問題も解決空間も十分明確に定義されていない
    たとえば事前定義された選択肢が少なく、「自分で定義せよ」が多すぎる。提供されている選択肢の意味も不透明で、たとえば「you will Detect」がユーザーにどう役立つのか分かりにくい
    結果として、選択が出力にどのような影響を与えるのか不明確になり、ツールが鶏と卵の問題になる。システム理解を助けると言いながら、効果的に使うにはシステムを理解していなければならない
    この程度なら、むしろ ChatGPT に効果的なプロンプトを作ってもらうほうが簡単かもしれない

    • 対象ユーザーは、プロンプトベースの大規模言語モデルを多少は知っていて、少し案内が必要な人だと仮定していた。そうであれば、これはスキルを高めるための優れたシンプルな フレームワークに見える
    • 数か月より短いプロジェクトをしたことがないので、半週で作れるアプリがどんな種類のものなのか気になる。共有できるリンクがあるのかも気になる
  • 私たちがこうしたボットと会話するとき、いったい誰と話しているのだろうか?
    https://medium.com/@colin.fraser/who-are-we-talking-to-when-...
    この技術を擬人化されたチャットインターフェース、つまり人間の衣装のように見える形で提示するのは意図的な選択だ。私たちの中に閉じ込められた汎用人工知能があるなら、チャットインターフェースでやり取りするのは自然に見えるかもしれない
    しかし逆に、チャットインターフェースでやり取りする技術はつまり汎用人工知能なのだと考えやすくなる。Playground で大規模言語モデルを直接扱ってみると、チャットは会話相手がいるという幻想を強める 煙と鏡の一層にすぎない

    • GPT は何よりも 即興俳優だ。与えられたテキストをできるだけ自然につなげるように訓練されており、そのため次に何が来るべきか分からなければ、それらしいものを作り上げる
      その次に、この汎用的な即興俳優は特定の役割、つまり質問に答える人を演じるよう訓練される。ただしどんな質問にも答えさせると有害な助言も出てくる可能性があるので、無害な助言をする質問応答者として訓練されるわけだ
      モデルに仕事をさせるには、どのような役割をすべきかを知る必要がある。「質問に答えようとする人」という役割は柔軟で、応答をよりカスタマイズできるようにしてくれる
      つまり 対話型インターフェースは、半分は自己説明的な UI だからで、残り半分はモデルに有用な役割をさせるためだ
  • これはChatGPTと特に結び付いているようには見えない。単にテキストブロックをクリックして組み合わせるフォームで、どの大規模言語モデルにも使えそう
    特定の独占的プロバイダーの大規模言語モデルひとつに固執するのは、この分野の発展に役立たないと思う

    • その通り。明らかにChatGPT専用ではなく、文の一部を埋めるフォームに近い。ただ、ChatGPTは最も認知されている名前のひとつで、さまざまな形式の出力をよりうまく出せるように思う
      このプロンプトビルダーは、どの大規模言語モデルにも使用できる
  • 各プロンプト機能が応答をどう改善するのかについて、実際の分析があるとよい

    • 少し宣伝すると、そういうツールがあるかもしれない :) https://github.com/agenta-ai/agenta
      プロンプトと、より複雑な大規模言語モデルのワークフローを評価するプラットフォームを作っている
      ユーザーを見ていると、プロンプトの結果は非常に確率的だ。一般化するのは難しく、たとえば営業支援ツールを作っていたユーザーは、プロンプト内の文の順序を変えただけで精度が大きく上がることを発見した
    • 先月のブログ記事の脚注で、システムプロンプトに「良い回答をしたら500ドルのチップをあげる」と書くとモデルの性能が良くなると書いたところ、Hacker Newsではかなり怒られて疑似科学だと言われた: https://news.ycombinator.com/item?id=38782678
      この効果をもう少し学術的に示す新しい記事を準備している
    • 残念ながら、これは2つの理由で極めて難しい
      第一に、入力空間がほぼ無限だ。任意の自然言語入力、任意のデータソース、任意のユースケースがすべてあり得るため、実際のユースケースに適用してみる前に、応答が「改善」されるかどうかを事前に知るのは非常に難しい
      第二に、出力空間も測定が難しい。有用性は人によって異なって定義され得るし、特に「より良い検索エンジン」を超えてGPTで創造的な成果物を作り始めると、さらに複雑になる
  • 「プロンプトエンジニアリング」という言葉の意味を理解できたことがない。結局、「解決しようとしている問題や実行したいタスクを明確かつ正確に説明できるか」を超えたことがあったのだろうか、と思う。基本的なコミュニケーション能力に見える
    「あなたはBであり、Cを行い、Dをしなければならない」のような特定形式のプロンプトが、他の明確で簡潔な指示より優れているという厳密なデータを見たことがない
    かつては優れたコミュニケーション能力と呼んでいたものに新しい名前を付けたことには驚くが、エンジニアは文章が下手だという昔からの固定観念のほうが事実に近いのかもしれない

  • 「〜のように振る舞え」パターンが今でも必要なのか気になる
    GPT-4ではもう使わなくなった。デフォルトの「ペルソナ」がほとんどのプロンプトに十分うまく答えるし、「...の専門家のように振る舞え」としても、目に見えて良い結果にはならない
    本当に欲しいツールは、小さな変更を加えた複数のプロンプトを軽量だが効果的に試して比較し、どちらが良いか感触をつかませてくれるものだ。こういう良いツールを見た人がいるか気になる

    • 複数のプロンプトを質問セットに対してテストしたいのか気になる。まさにその目的のツールは見つけられず、プロンプトを比較するときは短いスクリプトで質問とプロンプトを繰り返し実行していた
      テストしたいプロンプトを追加するだけで済むツールを作ると面白そうだが、まず思い浮かぶ課題は、使う質問セットを作ることだ
      ここで言うプロンプトテストが、質問セットに対するシステムプロンプトのテストなのか、それとも同じ質問を複数の方法で尋ねるテストなのかも気になる
    • そのパターンはもうあまり有用ではないと思う
      そして、そういうツールを作って準備できたらTwitterでDMする
  • 一般に、指示のリストが長いほど、ChatGPTが各指示に従う可能性は低くなるように思う。注意が分散する感じで、「Aをしろ」とだけ言えばAをするが、「AもしてBもして」と言うと両方やるものの、それぞれは部分的にしかできない
    いちばん良かった経験は、短いか中くらいの長さのプロンプトを与え、その後にワンショットまたはフューショットの例を使うやり方だった。特に複数のことを同時にさせたいときはフューショットが良い