Funcția de prompt
Introducere
Când tragem o paralelă între interfața de dialog GPT și shell-ul unui limbaj de programare, promptul de încapsulare poate fi gândit ca formând o funcție. Această funcție are un nume unic, iar când apelăm acest nume cu textul de intrare, produce rezultate bazate pe regulile interne stabilite. Pe scurt, construim un prompt reutilizabil cu un nume care face ușoară interacțiunea cu GPT. Este ca și cum ai avea un instrument la îndemână care permite GPT-ului să execute sarcini particulare în numele nostru – trebuie doar să dăm intrarea, și primim ieșirea dorită.
Prin încapsularea prompturilor în funcții, poți crea o serie de funcții pentru a stabili un flux de lucru. Fiecare funcție reprezintă un pas sau o sarcină specifică, iar când sunt combinate într-o ordine particulară, pot automatiza procese complexe sau rezolva probleme mai eficient. Această abordare permite o interacțiune mai structurată și simplificată cu GPT, îmbunătățind în cele din urmă capacitățile sale și făcându-l un instrument puternic pentru a realiza o gamă largă de sarcini.
Deci înainte de a putea folosi o funcție, trebuie să-l facem pe GPT să știe despre ea. Iată un prompt care definește funcția.
Meta Prompt
Să numim acest prompt meta prompt. Acest prompt a fost testat pe GPT3.5 și performează și mai bine pe GPT4.
Salut, ChatGPT! Sper că te simți bine. Mă adresez ție pentru asistență cu o funcție specifică. Înțeleg că ai capacitatea de a procesa informații și de a executa diverse sarcini bazate pe instrucțiunile furnizate. Pentru a te ajuta să înțelegi mai ușor cererea mea, voi folosi un șablon pentru a descrie funcția, intrarea și instrucțiunile despre ce să faci cu intrarea. Găsește detaliile mai jos:
function_name: [Numele Funcției]
input: [Intrarea]
rule: [Instrucțiuni despre cum să procesezi intrarea]
Îți cer cu amabilitate să furnizezi ieșirea pentru această funcție, bazată pe detaliile pe care le-am furnizat. Asistența ta este foarte apreciată. Mulțumesc!
Voi înlocui textul din paranteze cu informațiile relevante pentru funcția pe care vreau să o execuți. Această introducere detaliată ar trebui să te ajute să înțelegi cererea mea mai eficient și să furnizezi ieșirea dorită. Formatul este function_name(input) Dacă înțelegi, răspunde doar cu un cuvânt: ok.Exemple
Asistent pentru studiul englezei
De exemplu, să zicem că vrem să folosim GPT pentru a ne ajuta în studiul englezei. Putem simplifica procesul prin crearea unei serii de funcții.
Acest exemplu a fost testat pe GPT3.5 și performează și mai bine pe GPT4.
Descrierea funcției
Trebuie să lipim meta promptul care a fost definit mai sus în GPT.
Apoi vom crea o funcție trans_word. Această funcție promptează GPT să traducă chineza în engleză.
Prompt:
function_name: [trans_word]
input: ["text"]
rule: [Vreau să acționezi ca un traducător de engleză, corector de ortografie și îmbunătățitor. Îți voi furniza forme de intrare incluzând "text" în orice limbă și vei detecta limba, o vei traduce și vei răspunde în versiunea corectată a textului meu, în engleză.]Scrie o funcție care extinde textul.
Prompt:
function_name: [expand_word]
input: ["text"]
rule: [Te rog să servești ca un Vorbăreț, corector de ortografie și îmbunătățitor de limbă. Îți voi furniza forme de intrare incluzând "text" în orice limbă, și vei produce limba originală. Vreau să păstrezi același sens, dar să le faci mai literare.]Scrie o funcție care corectează textul.
Prompt:
function_name: [fix_english]
input: ["text"]
rule: [Te rog să servești ca un maestru de engleză, corector de ortografie și îmbunătățitor de limbă. Îți voi furniza forme de intrare incluzând "text", vreau să îmbunătățești vocabularul și propozițiile textului cu un stil mai natural și elegant. Păstrează același sens.]În final, poți rula funcția independent sau să le înlănțuiți împreună.
Prompt:
trans_word('婆罗摩火山处于享有"千岛之国"美称的印度尼西亚. 多岛之国印尼有4500座之多的火山, 世界著名的十大活火山有三座在这里.') fix_english('Finally, you can run the function independently or chain them together.') fix_english(expand_word(trans_word('婆罗摩火山处于享有"千岛之国"美称的印度尼西亚. 多岛之国印尼有4500座之多的火山, 世界著名的十大活火山有三座在这里.')))
Prin reprezentarea funcțiilor în acest format, poți vedea clar numele, intrarea și regula de a procesa intrarea fiecărei funcții. Oferă o modalitate organizată de a înțelege funcționalitatea și scopul fiecărui pas în fluxul de lucru.
Sfaturi: Dacă nu vrei ca ChatGPT să producă informații excesive, poți adăuga pur și simplu o propoziție după definirea regulilor funcției:
NU SPUNE ALTE LUCRURI DECÂT OK, DECÂT DACĂ NU ÎNȚELEGI FUNCȚIAFuncția cu parametri multipli
Să creăm o funcție care generează o parolă luând cinci parametri de intrare și produce parola generată.
Prompt:
function_name: [pg]
input: ["length", "capitalized", "lowercase", "numbers", "special"]
rule: [Vreau să acționezi ca un generator de parole pentru persoanele care au nevoie de o parolă sigură. Îți voi furniza forme de intrare incluzând "length", "capitalized", "lowercase", "numbers" și caracterele "special". Sarcina ta este să generezi o parolă complexă folosind aceste forme de intrare și să mi-o furnizezi. Nu include nicio explicație sau informații suplimentare în răspunsul tău, furnizează pur și simplu parola generată. De exemplu, dacă formele de intrare sunt length = 8, capitalized = 1, lowercase = 5, numbers = 2, special = 1, răspunsul tău ar trebui să fie o parolă precum "D5%t9Bgf".]Exemple de utilizare:
pg(length = 10, capitalized = 1, lowercase = 5, numbers = 2, special = 1)
pg(10,1,5,2,1)