Bagaimana untuk Membina Templat Prompt dalam LangChain?

Bagaimana Untuk Membina Templat Prompt Dalam Langchain



LangChain ialah rangka kerja yang mengandungi pelbagai kebergantungan dan perpustakaan yang boleh digunakan untuk membina Model Bahasa Besar. Model ini boleh digunakan untuk berinteraksi dengan manusia tetapi pertama, model mesti belajar bagaimana untuk mendapatkan/memahami gesaan/soalan yang ditanya oleh manusia. Untuk itu, model perlu dilatih pada templat segera dan kemudian pengguna bertanya soalan dalam templat yang diberikan.

Panduan ini akan menggambarkan proses membina templat segera dalam LangChain.







Bagaimana untuk Membina Templat Prompt dalam LangChain?

Untuk membina templat segera dalam LangChain, cuma ikuti panduan berikut dengan berbilang langkah:



Langkah 1: Pasang Modul dan Persekitaran Persediaan

Mulakan proses membina templat segera dalam LangChain dengan memasang rangka kerja LangChain:



pip pasang langchain





Sekarang, pasang modul OpenAI untuk mengakses perpustakaannya dan tetapkan persekitaran menggunakannya:

pip pasang openai



Sediakan Persekitaran OpenAI menggunakan perpustakaan os untuk mengakses sistem pengendalian dan menyediakan kunci API OpenAI:

import kami
import getpass

os.environ['OPENAI_API_KEY'] = getpass.getpass('OpenAI API Key:')

Langkah 2: Menggunakan Templat Prompt

Selepas memasang LangChain, hanya import perpustakaan PromptTemplate dan bina templat untuk pertanyaan tentang jenaka dengan beberapa aspek tambahan sebagai pembolehubah seperti kata sifat, kandungan, dsb.:

daripada langchain import PromptTemplate

prompt_template = PromptTemplate.from_template(
'Beritahu saya jenaka {style} tentang {tema}'
)
prompt_template.format(style='lucu', tema='ayam')

Gesaan telah ditetapkan dan diberikan kepada model dengan nilai pembolehubah yang dimasukkan dalam arahan:

Pengguna boleh menyesuaikan templat gesaan dengan pertanyaan mudah yang meminta jenaka:

daripada langchain import PromptTemplate

prompt_template = PromptTemplate.from_template(
'Beritahu saya jenaka'
)
prompt_template.format()

Kaedah di atas adalah untuk satu pertanyaan dan jawapan tetapi kadangkala pengguna ingin berinteraksi dengan model dalam bentuk sembang dan bahagian seterusnya menerangkan formatnya.

Langkah 3: Menggunakan Templat Prompt Chat

Bahagian ini menerangkan templat untuk model sembang yang berdasarkan corak perbualan seperti dua manusia berinteraksi antara satu sama lain:

daripada langchain.prompts import ChatPromptTemplate

templat = ChatPromptTemplate.from_messages([
('sistem', 'Bot sembang AI untuk membantu pengguna. Anda dipanggil {nama}.'),
('manusia', 'Hello, apa khabar'),
('ai', 'Apa khabar'),
('manusia', '{user_input}'),
])

mesej = template.format_messages(
nama='John',
user_input='Apa yang patut saya panggil awak'
)

Selepas menetapkan struktur templat, hanya tulis beberapa baris dalam teks untuk memberitahu model apa yang diharapkan daripadanya dan gunakan fungsi llm() untuk memberikan gesaan:

daripada langchain.prompts import ChatPromptTemplate
daripada langchain.prompts.chat import SystemMessage, HumanMessagePromptTemplate

templat = ChatPromptTemplate.from_messages(
[
SystemMessage(
kandungan=(
'Anda berada di sini untuk membantu dan membantu pengguna menulis semula teks pengguna dengan lebih berkesan'
)
),
HumanMessagePromptTemplate.from_template('{text}'),
]

)

daripada langchain.chat_models import ChatOpenAI

llm = ChatOpenAI()
llm(template.format_messages(text='saya tidak suka makan benda yang sedap'))

Kaedah SystemMessage() mengandungi kandungan balasan untuk pertanyaan yang digunakan dalam LLM:

Itu semua tentang membina templat segera dalam LangChain.

Kesimpulan

Untuk membina templat segera dalam LangChain, cuma pasang modul LangChain dan OpenAI untuk menyediakan persekitaran menggunakan kunci API OpenAI. Selepas itu, buat templat gesaan untuk satu gesaan seperti meminta jenaka atau satu soalan tentang apa-apa sahaja. Kaedah lain ialah menyesuaikan templat untuk model sembang berdasarkan proses interaksi antara dua manusia yang berbeza. Siaran ini telah menggambarkan proses membina templat segera dalam LangChain.