生成AIメモ
Posted: | Categories: AI | Tags: ChatGPT
プロンプトから精度を上げる
プロンプト技術はAIの進歩に伴って、より人間とのコミュニケーションが最適化されることに伴い陳腐化していくとは思う。 ただ現状はAIのLLMの特性もあるので、それに併せた方が生産性は高まりそう。
- LLMのプロンプト技術まとめ #ChatGPT - Qiita
- 各種Prompt Engineeringの日本語実例集(Zero-CoT、mock、ReAct、ToT、Metacog、Step Back、IEPなど) #Python - Qiita
- 【エンジニア向け】コピペで使えるChatGPTプロンプト構文20選を公開いたしました|株式会社Emposyのプレスリリース
プロンプト自体をChatGPTに考えて貰って精度を上げる
プロンプトそのものをAIに改良させる:ChatGPTなどの文例集 このアプローチは素晴らしいと思う。 文章を作るのに特化した現在のLLMに適した使用方法だと思う。
1段階、作業が増えるが後の工程は短くなりそう。 例えば私は プロンプトそのものをAIに改良させる:ChatGPTなどの文例集 この内容の最後のプロンプトに
#プロンプト
"""
openinterpreter https://github.com/KillianLucas/open-interpreter/ を使ってpythonのコードを書くようなプロンプトを考えてください。
"""
を加えると下記の出力だった。まぁ、もっともだ。多角的に考慮されていると思う。 LLMのプロンプト技術まとめ #ChatGPT - Qiita を見た上でだともっとチューニングは可能そうではある。
1
初めのプロンプトは明確かつ簡潔ですが、いくつかの側面で改善の余地があります。1.具体性: 何を実現したいのか、どのようなpythonコードを書きたいのか明確にすることは重要です。この点を明確にすることで、ChatGPTはより関連性の高いコードスニペットを提供することが可能となります。2.コンテキスト: openinterpreterの特定の機能や目的についての背景情報を提供することが有益です。3.期待される出力: どのような出力を期待しているのかを指定すると、ChatGPTはより適切な解決策を提供できます。4.制約条件: 利用可能なリソースや時間の制約など、任意の制約条件を明示することも重要です。これらの要素を考慮に入れることで、プロンプトはより明確で効果的になり、ChatGPTはより有用で関連性の高い回答を提供することができます。
2
具体的な目的やタスクを明示する。
openinterpreterの特定の機能や利用シナリオについての情報を提供する。
期待される出力の形式や内容を明確にする。
任意の制約条件や前提条件を述べる。
3
"""
openinterpreter (https://github.com/KillianLucas/open-interpreter/) を利用して、特定の数学的計算を実行するPythonコードを書くプロンプトを提供してください。私は二次方程式の解を求めるコードを書きたいと考えています。openinterpreterのドキュメンテーションに基づいて、どのようにコードを構造化し、エラー処理を行うべきかについても言及してください。出力は、コードスニペットとそれを実行した際の期待される結果を含めてください。
"""
OpenInterpreterのコードを書いてもらう汎用的なプロンプトを考えたい
ブログに良くない情報が含まれるのを防ぎたい。 そのためのpythonコードを書いてもらいたい。
Let's think step by step.Take a deep breath.
貴方は優秀なプロのPythonエンジニアです。
openinterpreter (https://github.com/KillianLucas/open-interpreter/) を利用して、
現在のディレクトリ配下のファイルを全てチェックするプログラムを提供してください。
openinterpreterのドキュメンテーションに基づいて、どのようにコードを構造化を行うべきかについても言及してください。
出力は、コードスニペットとそれを実行した際の期待される結果を含めてください。
チャットが長くなる場合は段階的に一歩ずつ推論を進める形でお願いします。 一旦止めてから継続してください。
その時は私から「続けて」など合図をします。 私との会話は日本語でお願いします。
私はテキストファイルに機密情報が含まれていない事をチェックするコードを書きたいと考えています。
機密情報が含まれていそうなファイルのファイル名と含まれていると思われた箇所を出力するプログラムです。
機密情報が含まれているかどうかはOpen InterpreterのLLMで判断するようにしてください。
そのためのopeninterpreterに与える初期プロンプトの考慮もお願いします。