Bumalik sa blog

AI para sa mga baguhanGabay

Paano magsulat ng isang mahusay na prompt: 5 bahagi at isang halimbawa ng bago/pagkatapos

Gawing prompt ang isang malabong isang linyang kahilingan na may task, context, format, example at rules, pagkatapos ay ipadala ito sa pamamagitan ng OpenAI-compatible API.

Ni CheapTokens TeamNai-publish noong 7 min na pagbabasa

Cover: isang linyang kahilingan na "Summarize this email" at ang sagot na kailangan nito ng task, context, format, example at rules
Sa pahinang ito
  1. Bakit ang "Summarize this email" ay isang sugal
  2. Ang limang bahagi, sa simpleng salita
  3. Bago at pagkatapos: isang email ng customer
  4. Ipadala ito sa pamamagitan ng API
  5. Magkano ang dagdag na salita
  6. Suriin ang sarili

Ang iyong modelo ay nagbubuod ng email ng customer sa tatlong talata noong Lunes at sa dalawang bullet point noong Martes. Pareho ang prompt, pareho ang modelo. Iyan ang ginagawa ng isang linyang kahilingan: iniiwan nito ang lahat ng desisyon sa modelo, at iba-iba ang desisyon ng modelo sa bawat pagkakataon.

Ang isang mahusay na prompt ay sumasagot sa limang tanong: ano ang gagawin (task), ano ang gagamitin (context), ano ang dapat na hitsura ng sagot (format), ano ang hitsura ng isang mahusay na sagot (example) at ano ang dapat iwasan (constraints). Sa ibaba, ang isang malabong kahilingan ay nagiging isang maayos na kahilingan, dumadaan sa OpenAI-compatible na CheapTokens API, at makikita mo kung ano ang idinadagdag ng mas mahabang prompt sa bill.

Bakit ang "Summarize this email" ay isang sugal#

Kapag nag-type ka ng "Summarize this email," mayroon ka nang sagot sa isip mo: isang pangungusap, gaano ito kaaprubahan, ano ang susunod na gagawin. Hindi nakikita ng modelo ang larawang iyon. Kaya nanghuhula ito, at bawat hula ay makatwiran. Kapag pinagsama-sama, nagbibigay sila ng ibang sagot sa bawat pagtakbo, at ang isang script na bumabasa ng sagot ay walang matatag na mapaparse.

Ang prompt-engineering guide ng OpenAI (binasa noong 27 Oktubre 2026) ay malinaw na nagsasaad: ang prompt engineering ay pagsusulat ng epektibong mga tagubilin, at mas mahusay ang mga GPT model kapag sinabi mo nang tahasan kung paano gagawin ang isang gawain. Ang ugali ay hindi limitado sa teksto. Noong 26 Oktubre 2026, isang Telegram channel ay nagbahagi ng prompt para sa isang 30-segundong generated na video na hinati sa mga bloke: eksena, visual na istilo, diyalogo, audio at mga pagbubukod, teknikal na detalye. Ibang gawain, parehong galaw. Pinangalanan ng may-akda ang bawat desisyon nang maaga sa halip na ipaubaya ito sa modelo.

Subukan mo mismoSubukan: ano ang kailangang hulaan ng isang modelo mula sa "Summarize this email"?Ipakita ang sagot

Ang haba (isang linya o isang pahina), ang audience (ikaw o ang customer), ang hugis ng sagot (prose, bullets, JSON), kung ano ang itinuturing na mahalaga, at kung ano ang gagawin kapag hindi sinasabi ng email. Ang bawat isa sa mga iyon ay isang bagay na maaaring ayusin ng isang prompt.

Ang limang bahagi, sa simpleng salita#

Isipin mong nagbibigay ka ng briefing sa isang bagong kasamahan sa kanilang unang araw. Ang "Deal with this one" ay nagbibigay sa iyo ng isang hula. Ang isang sticky note na may trabaho, materyal, format na gusto mo, isang sample at isang "huwag" ay nagbibigay sa iyo ng ibig mong sabihin.

Task ay isang pandiwa at isang bagay: "Summarize the email and rate its urgency." Maging literal. Ang "Help with this email" ay hindi isang gawain.

Context ay ang materyal na pinagtatrabahuhan ng modelo: ang email, isang paglalarawan ng produkto, isang patakaran. Alam lamang ng modelo ang natutunan nito sa training at ang ipinaste mo. Balutin ang na-paste na teksto sa mga delimiter, tulad ng XML-style na mga tag tulad ng <email>…</email> o markdown headers, upang hindi maipaghalo ang iyong mga tagubilin sa teksto. Iminumungkahi ng guide ng OpenAI ang pareho.

Format ay ang hitsura ng sagot: "JSON na may mga key na summary, urgency, next_step" o "tatlong bullet, 12 salita bawat isa sa pinakamarami". Pinakamahalaga ito kapag ang code ang bumabasa ng sagot.

Example ay isang input na may output na gusto mo. Inirerekomenda ng guide ang few-shot na mga halimbawa na sumasaklaw sa magkakaibang hanay ng mga input na may nais na mga output. Ang isang halimbawa ay maayos na simula; magdagdag ng pangalawa kapag malaki ang pagkakaiba ng iyong mga input.

Constraints ay ang mga "huwag": gumamit lamang ng mga katotohanan mula sa email, isulat ang "unknown" kapag may nawawala, walang refund o diskwento.

Ang limang bahagi ng isang prompt sa pagkakasunod-sunod na karaniwang ginagamit
Ang limang bahagi ng isang structured prompt: task, context, format, example, constraints

May kaunting kahalagahan din ang pagkakasunod-sunod. Sinasabi ng parehong guide na ang isang developer o system message ay karaniwang sumusunod sa identity, instructions, examples, context, at ang context ay nabibilang malapit sa dulo dahil nagbabago ito sa bawat kahilingan. Ang mga patakaran ay nasa system message; ang input ay nasa user message.

Itugma ang mga pares

Itugma ang bawat bahagi ng isang prompt sa tanong na sinasagot nito

  • TaskAno ang dapat gawin ng modelo?
  • ContextAnong materyal ang pinagtatrabahuhan nito?
  • FormatAno ang dapat na hitsura ng sagot?
  • ExampleAno ang hitsura ng isang mahusay na sagot?
  • ConstraintsAno ang hindi dapat gawin?

Bago at pagkatapos: isang email ng customer#

Narito ang one-liner sa tabi ng parehong kahilingan na may lahat ng limang bahagi. Ang email mismo ay ang context, at ito ay napupunta sa user message, nakabalot sa <email> na mga tag.

Ihambing

Isang kahilingan, dalawang prompt

Before

text
Summarize this email.

After

text
You summarize customer emails for a support team.

Task: Summarize the email in the <email> tags and rate how urgent it is.

Format: Reply with JSON only, using the keys "summary" (one sentence), "urgency" ("low", "medium" or "high") and "next_step" (one short sentence).

Example:
<email>Hi, order 1042 was due Monday and it's Thursday. Where is it?</email>
{"summary": "Order 1042 is three days late and the customer asks where it is.", "urgency": "medium", "next_step": "Check the carrier tracking for order 1042 and reply with the status."}

Rules:
- Use only what the email says. If something is missing, write "unknown".
- Don't offer refunds or discounts.
- Output nothing outside the JSON.

Basahin ang "after" mula taas hanggang ibaba at matutukoy mo ang bawat bahagi: ang pambungad na linya at ang gawain, ang linya ng format, ang halimbawa, ang mga patakaran. Ang email ay sadyang wala sa teksto. Nagbabago ito sa bawat kahilingan, kaya hiwalay itong naglalakbay.

Ang balangkas ng structured prompt: limang may label na bahagi
Ang limang bahagi ng isang prompt, isang linya bawat isa (ang email ay napupunta sa user message)

Ipadala ito sa pamamagitan ng API#

Hindi nagbabago ang mga tagubilin, kaya nakatira sila sa isang constant at nauuna. Nagbabago ang email, kaya huli ito. Ito ang buong script, gamit ang OpenAI Python SDK na nakaturo sa CheapTokens. Ang modelo ay DeepSeek-V4-Flash: 380K context, hanggang 32,768 output token bawat sagot, isang presyo sa anumang oras. Kunin ang base URL at model id mula sa CheapTokens docs; kung wala ka pang key, ang iyong unang API request ay naglalakad sa proseso.

python
import json
import os

from openai import OpenAI

client = OpenAI(
    base_url="https://api.cheaptokens.dev/v1",
    api_key=os.environ["CHEAPTOKENS_API_KEY"],
)

SYSTEM_PROMPT = """You summarize customer emails for a support team.

Task: Summarize the email in the <email> tags and rate how urgent it is.

Format: Reply with JSON only, using the keys "summary" (one sentence), "urgency" ("low", "medium" or "high") and "next_step" (one short sentence).

Example:
<email>Hi, order 1042 was due Monday and it's Thursday. Where is it?</email>
{"summary": "Order 1042 is three days late and the customer asks where it is.", "urgency": "medium", "next_step": "Check the carrier tracking for order 1042 and reply with the status."}

Rules:
- Use only what the email says. If something is missing, write "unknown".
- Don't offer refunds or discounts.
- Output nothing outside the JSON.
"""

email = "Hello, I was charged twice for my subscription this month. Please fix it before Friday, my card is almost at its limit."

response = client.chat.completions.create(
    model="deepseek-ai/DeepSeek-V4-Flash-0731",
    messages=[
        {"role": "system", "content": SYSTEM_PROMPT},
        {"role": "user", "content": f"<email>\n{email}\n</email>"},
    ],
)

reply = response.choices[0].message.content
print(json.loads(reply))
print(response.usage.prompt_tokens, response.usage.completion_tokens)

Kung nagawa ng linya ng format ang trabaho nito, ang sagot ay isang JSON object na may summary, urgency at next_step, at ginagawa itong dictionary ng json.loads. Kung magtaas ito ng error, binalot ng modelo ang JSON sa karagdagang teksto: higpitan ang huling patakaran o magdagdag ng pangalawang halimbawa. Ang huling linya ay nagpi-print kung gaano karaming token ang pumasok at lumabas, na siyang numero na pinag-uusapan ng susunod na seksyon.

Magkano ang dagdag na salita#

Ang token ay isang piraso ng salita. Nagbabayad ka bawat token para sa ipinapadala mo (input) at para sa isinusulat ng modelo (output), at ang output ang mas mahal na bahagi. Higit pa riyan sa input vs output tokens.

Sabihin nating nagpapatakbo ka ng support bot na may 1,000 email bawat araw, at ang email ay mga 300 token. Ang one-liner ay nagdadagdag ng humigit-kumulang 10 token na tagubilin, kaya mga 310 ang pumapasok; ipinapalagay namin na nakakakuha ito ng free-form na buod na mga 250 token. Ang system prompt sa itaas ay mga 200 token, kasama ang humigit-kumulang 10 para sa <email> na mga tag, kaya mga 500 ang pumapasok; ipinapalagay namin na ang linya ng format ay nagpapanatili ng sagot sa isang JSON na mga 80 token. Sa DeepSeek-V4-Flash, iyon ay $0.00003 bawat email para sa one-liner at $0.000016 para sa structured prompt. Naging mas mahaba ang prompt, ngunit naging mas mura ang kahilingan, dahil ang mahabang bahagi ay input at ang pinaikling bahagi ay output. Patakbuhin ang script at palitan ang mga pagpapalagay na ito ng iyong sariling prompt_tokens at completion_tokens.

Narito ang structured prompt sa 1,000 email bawat araw sa mga modelo. Sa kabuuan, kasama ang input at output na binibilang nang magkasama, ang CheapTokens ay lumalabas na mas mura kaysa sa reference na presyo ng OpenRouter sa workload na ito; ang kasalukuyang mga presyo ay nasa pricing page.

Modelo Bawat kahilingan 1,000 mga kahilingan OpenRouter, 1,000 mga kahilingan
GLM-5.3-Flash $0.000013 $0.0132 $0.0234
DeepSeek-V4-Flash $0.000016 $0.0155 $0.0462
MiniMax-M2.7 $0.000037 $0.037 $0.444

500 input at 80 output na token bawat kahilingan. Ang mga presyo kada 1M token ay kasalukuyan at nagbabago kasabay ng aming mga taripa; ang column ng OpenRouter ay nagpapakita ng reference na presyo para sa parehong workload.

Suriin ang sarili#

Isang tanong tungkol sa ugali na pinakamalaki ang pakinabang kapag ang isang script ay gumagamit muli ng prompt. Kapag gumana na ang istruktura, ang susunod na mga knob ay ang system message at temperature, na sakop sa System prompt and temperature.

Mabilisang pagsusuri

Ang iyong script ay nagpapadala ng parehong mga tagubilin na may bagong email sa bawat pagkakataon. Saan dapat mapunta ang email?

Ipakita ang sagot

Sagot: Sa dulo, pagkatapos ng mga tagubilin at ng halimbawa

Ang mga tagubilin ay nananatiling pareho sa pagitan ng mga kahilingan at nagbabago ang email. Iminumungkahi ng guide ng OpenAI na ilagay ang context na nagbabago malapit sa dulo ng prompt.