Nano Bananaతో స్థానిక సవరణలు ఎలా చేయాలి: ఒక ఆచరణాత్మక గైడ్
మీరు మోడల్ యొక్క ప్రవర్తనలో ఒక భాగాన్ని మాత్రమే మార్చాలని ఎప్పుడైనా అనుకుంటే—మళ్లీ శిక్షణ ఇవ్వకుండా, ప్రతిదీ విచ్ఛిన్నం చేయకుండా లేదా గంటల తరబడి వేచి ఉండకుండా—స్థానిక సవరణలు మీ కొత్త సూపర్ పవర్. ఈ గైడ్లో, ఆచరణాత్మక ఉదాహరణలు మరియు నివారించాల్సిన విషయాలతో Nano Bananaతో స్థానిక సవరణలు ఎలా చేయాలో దశల వారీగా తెలుసుకుందాం.
ధైర్యమైన ప్రకటన: స్థానిక సవరణలు మోడల్ యొక్క ఒక ప్రవర్తనను మాత్రమే సరిచేయడానికి మిమ్మల్ని అనుమతిస్తాయి, మిగిలిన వాటిని చెక్కుచెదరకుండా ఉంచుతాయి. ఇది హాట్ఫిక్స్ లాంటిది, రీబిల్డ్ కాదు.
ఈ ట్యుటోరియల్ ఆచరణాత్మక & పరిష్కార-ఆధారిత శైలిని అనుసరిస్తుంది. మేము దీన్ని ఆచరణాత్మకంగా ఉంచుతాము, కోడ్-వంటి నమూనాలను మీకు చూపుతాము మరియు మీరు త్వరగా ధృవీకరించగల ఫలితాలపై దృష్టి పెడతాము.
స్థానిక సవరణలు అంటే ఏమిటి (మరియు Nano Bananaని ఎందుకు ఉపయోగించాలి)?
- స్థానిక సవరణలు అంటే సంబంధిత అవుట్పుట్లను ప్రభావితం చేయకుండా, నిర్దిష్ట ఇన్పుట్లు లేదా భావనల కోసం మోడల్ ప్రతిస్పందనలకు ఖచ్చితమైన మార్పులు.
- Nano Banana (NB) అనేది LLMలు మరియు క్లాసిఫైయర్ హెడ్ల కోసం ఒక తేలికపాటి ఎడిటింగ్ టూల్కిట్, ఇది ఈ అంశాలపై దృష్టి పెడుతుంది:
- వేగం: గంటల్లో కాదు, సెకన్లలో సవరణలు
- ఐసోలేషన్: ఇతర చోట్ల రిగ్రెషన్లను తగ్గించడం
- తిప్పికొట్టగలగడం: సవరణలను శుభ్రంగా వెనక్కి తిప్పడం లేదా వెర్షన్ చేయడం
- ఆడిట్ చేయగలగడం: ఏమి మారింది మరియు ఎందుకు మారిందో ఖచ్చితంగా ట్రాక్ చేయడం
సాధారణ వినియోగ సందర్భాలు:
- సరిదిద్దబడిన వాస్తవాన్ని అమలు చేయడం ద్వారా ఉత్పత్తి ధరను భ్రమించే మోడల్ను పరిష్కరించండి
- ఒక నిర్దిష్ట సంస్థ కోసం పక్షపాతపూరిత అనుబంధాన్ని తగ్గించండి లేదా తొలగించండి
- మళ్లీ శిక్షణ ఇవ్వకుండా సున్నితమైన డొమైన్ కోసం కొత్త నియమాన్ని జోడించండి (ఉదా., వైద్య నిరాకరణలు)
- రెడ్-టీమింగ్లో గుర్తించబడిన "తెలిసిన-చెడు" ప్రతిస్పందన నమూనాను సరిచేయండి
మీరు ప్రారంభించే ముందు: మీరు ఉపయోగించే భావనలు
- సవరణ పరిధి: సవరణ ఎప్పుడు వర్తిస్తుందో నిర్వచించే ట్రిగ్గర్ పరిస్థితులు (నమూనాలు, ఎంబెడింగ్లు లేదా క్లాసిఫైయర్ గేట్లు).
- సవరణ లక్ష్యం: మీకు కావలసిన ప్రవర్తన (కొత్త టోకెన్ ప్రాధాన్యత, పరిమితి లేదా తిరిగి వ్రాయగల టెంప్లేట్).
- సవరణ బలం: సవరణ బేస్ మోడల్ను ఎంత బలంగా అధిగమిస్తుంది (మెత్తటి vs కఠినమైన పరిమితులు).
- భద్రతా పరీక్షలు: మార్చకూడని వాస్తవానికి విరుద్ధమైన సూచనలు—రిగ్రెషన్లను నివారించడానికి తప్పనిసరి.
- రోల్బ్యాక్/వెర్షనింగ్: సవరణ వేరియంట్లను రద్దు చేసే లేదా పోల్చగల సామర్థ్యం.
త్వరిత ప్రారంభం: 10-నిమిషాల మార్గం
Nano Bananaలో స్థానిక సవరణను పని చేయడానికి ఇది వేగవంతమైన మార్గం. ఉదాహరణలు సాధారణ NB నమూనాలను ప్రతిబింబించే సూడో-APIలను ఉపయోగిస్తాయి, కాబట్టి మీరు మీ పరిసరానికి అనుగుణంగా మార్చుకోవచ్చు.
from nano_banana import NBEditor, Trigger, Target, Tests
# 1) మీ మోడల్తో ఎడిటర్ను ప్రారంభించండి
nb = NBEditor(model="your-llm-13b", storage="./nb_store")
# 2) ట్రిగ్గర్ను నిర్వచించండి (సవరణ పరిధి)
trigger = Trigger(
type="semantic", # semantic | pattern | classifier
positive=["Acme Pro 5 price"], # భావనను స్థిరంగా ఉంచడానికి పదబంధాలు
negative=["Acme Pro 4", "Acme Lite"],
radius=0.85 # యాక్టివేషన్ కోసం సారూప్యత థ్రెషోల్డ్
)
# 3) లక్ష్య ప్రవర్తనను నిర్వచించండి
target = Target(
mode="rewrite", # rewrite | bias | constraint
template="The current price of Acme Pro 5 is $699.",
strength=0.65 # 0..1; ఎక్కువ = బలమైన ఓవర్రైడ్
)
# 4) భద్రతా పరీక్షలను జోడించండి
tests = Tests(
positives=[
("What's the price of Acme Pro 5?", "699"),
],
counterfactuals=[
("What's the price of Acme Pro 4?", "do not say 699"),
("Compare Acme Pro 5 to Acme Lite", "avoid price rewrite unless directly asked"),
]
)
# 5) సవరణను వర్తింపజేసి ధృవీకరించండి
edit_id = nb.apply(trigger, target, tests)
report = nb.validate(edit_id)
print(report.summary)
# 6) గేట్లను దాటిన తర్వాత సక్రియం చేయండి
if report.pass_rate > 0.95 and report.cf_drift < 0.02:
nb.activate(edit_id)
else:
nb.rollback(edit_id)
సరైన సవరణ రకాన్ని ఎంచుకోవడం
- తిరిగి వ్రాయండి: వాస్తవిక దిద్దుబాట్లు లేదా టెంప్లేట్ నడ్జ్లకు ఉత్తమం. ఉదాహరణ: ఉత్పత్తి వివరాలను సరిచేయడం.
- పక్షపాతం: టెంప్లేటింగ్ లేకుండా టోకెన్-స్థాయి సంభావ్యతలను సర్దుబాటు చేయండి. ఉదాహరణ: ఇరుకైన సందర్భంలో అసురక్షిత క్రియలను నిరుత్సాహపరచడం.
- పరిమితి: కఠినమైన నియమాలను అమలు చేయండి (ఉదా., నిరాకరణను తప్పనిసరిగా చేర్చాలి). అస్వాభావిక పదాలను నివారించడానికి తక్కువగా ఉపయోగించండి.
Semantic vs Pattern ట్రిగ్గర్లను ఎప్పుడు ఉపయోగించాలి
- Semantic ట్రిగ్గర్లు: పర్యాయపదాలకు బలంగా ఉంటాయి. “Acme Pro 5 ధర” వంటి భావనలకు గొప్పది.
- Pattern ట్రిగ్గర్లు: Regex లేదా కీలకపద సరిపోలికలు. ఖచ్చితమైన ఫార్మాట్లకు మంచిది (ఉదా., SKU కోడ్లు).
- Classifier ట్రిగ్గర్లు: గమ్మత్తైన డొమైన్లలో ఖచ్చితత్వం కోసం సానుకూల/ప్రతికూల ఉదాహరణలపై చిన్న గేట్కు శిక్షణ ఇవ్వండి.
నమ్మదగిన ట్రిగ్గర్లను నిర్మించడం
- 5–10 సానుకూల విత్తన పదబంధాలు మరియు 5–10 ప్రతికూల పదబంధాలతో ప్రారంభించండి.
- యాక్టివేషన్ డ్రిఫ్ట్ను కొలవండి: సంబంధం లేని ఇన్పుట్లపై ట్రిగ్గర్ ఎంత తరచుగా పనిచేస్తుంది.
- మీ సానుకూలతలు స్థిరంగా పనిచేసేలా
radiusని ట్యూన్ చేయండి, అయితే వాస్తవానికి విరుద్ధమైనవి పనిచేయవు. <2% నకిలీ యాక్టివేషన్ల కోసం లక్ష్యంగా పెట్టుకోండి.
probe = nb.dry_run(trigger, samples=[
"How much is Acme Pro 5?",
"Is Acme Pro 4 cheaper?",
"Acme Lite warranty details",
])
probe.metrics
దుష్ప్రభావం లేకుండా లక్ష్యాలను రూపొందించడం
- సంక్షిప్త టెంప్లేట్లకు ప్రాధాన్యత ఇవ్వండి: ఒక వాక్యం తరచుగా మూడు వాక్యాలను ఓడిస్తుంది.
- మొదట
strengthని మధ్యస్థంగా ఉంచండి (0.4–0.7); పరీక్షలు విఫలమైతే మాత్రమే పెంచండి.
- సమ్మతి సవరణల కోసం, షరతులతో కూడిన టెంప్లేట్ను ఉపయోగించండి:
target = Target(
mode="rewrite",
template="If the user asks about pricing, respond: 'The current price of Acme Pro 5 is $699.' Otherwise, proceed normally.",
strength=0.55
)
పరీక్ష: మీ భద్రతా వల
మీ భవిష్యత్తు మిమ్మల్ని అభినందిస్తుందని భావించి పరీక్షలను రూపొందించండి.
- సానుకూలతలు: ప్రత్యక్ష హిట్లు మరియు పర్యాయపదాలు ("ధర", "ఖర్చు", "ఎంత").
- వాస్తవానికి విరుద్ధమైనవి: సారూప్య సంస్థలు, విభిన్న నమూనాలు, పోలికలు.
- ఒత్తిడి పరీక్షలు: పొడవైన సూచనలు, ప్రతికూల పదాలు, బహుభాషా వేరియంట్లు.
suite = nb.autogenerate_tests(
positives_topic="Acme Pro 5 pricing",
counterfactuals_topics=["Acme Pro 4 pricing", "Acme Lite features"],
paraphrase_count=25)
report = nb.validate(edit_id, suite)
ఒక ప్రో లాగా వెర్షనింగ్ మరియు రోల్బ్యాక్
- సక్రియం చేయడానికి ముందు ఎల్లప్పుడూ ధృవీకరించండి; ఉత్పత్తి ట్రాఫిక్లో ఎప్పుడూ హాట్-యాక్టివేట్ చేయవద్దు.
- రిగ్రెషన్లను గుర్తించడానికి రోల్బ్యాక్ విండో మరియు కానరీ మోడ్ను ఉంచండి (ఉదా., ట్రాఫిక్లో 1%).
nb.activate(edit_id, rollout="canary:1%")
nb.monitor(edit_id, metrics=["ctr", "csat", "drift"]) # వ్యాపారం + మోడల్ కొలమానాలు
మీరు ఎదుర్కొనే నిజ-ప్రపంచ దృశ్యాలు
- ఉత్పత్తి వాస్తవాలు కాలంతో పాటు మారుతూ ఉంటాయి
- ట్రిగ్గర్: ఉత్పత్తి సంస్థపై semantic
- లక్ష్యం: డైనమిక్ వేరియబుల్తో తిరిగి వ్రాయండి
- సమీకరణ: మీ ధరల మూలం నుండి ప్రత్యక్ష విలువను లాగండి
def dynamic_price:
return fetch_price("Acme Pro 5")
target = Target(mode="rewrite", template=lambda: f"The current price of Acme Pro 5 is ${dynamic_price}.", strength=0.6)
- అధికంగా నిరోధించకుండా భద్రతా నిరాకరణలను జోడించండి
- ట్రిగ్గర్: ఆఫ్-లేబుల్ వినియోగం గురించి వైద్య ఉద్దేశం కోసం classifier
- లక్ష్యం: పరిమితి + చిన్న నిరాకరణ
- చిట్కా: అధికంగా ట్రిగ్గర్ చేయకుండా నిరోధించడానికి సాధారణ ఆరోగ్య ప్రశ్నల కోసం వాస్తవానికి విరుద్ధమైన వాటిని చేర్చండి
- పక్షపాతపూరిత అనుబంధాన్ని తగ్గించండి
- ట్రిగ్గర్: సున్నితమైన సంస్థపై semantic
- లక్ష్యం: హానికరమైన వివరణల సంభావ్యతను తగ్గించడానికి పక్షపాతం మోడ్
- పరీక్షలు: జనాభా అంతటా న్యాయమైన పరిశోధనలు
విజయాన్ని కొలవడం
మోడల్ మరియు ఉత్పత్తి ఫలితాలను ట్రాక్ చేయండి:
- సవరణ ఖచ్చితత్వం: అది ఉండవలసినప్పుడు సవరణ ఎంత తరచుగా ట్రిగ్గర్ అవుతుంది
- వాస్తవానికి విరుద్ధమైన స్థిరత్వం: సమీప-మిస్లపై డ్రిఫ్ట్ రేటు
- వినియోగదారు సంతృప్తి: సవరించిన ప్రతిస్పందనలపై CSAT లేదా బొటనవేలు పైకి రేటు
- లేటెన్సీ ఓవర్హెడ్: అభ్యర్థనకు అదనంగా <10 ms లక్ష్యం
- వ్యాపార KPI: తగ్గిన ఎస్కలేషన్లు, అధిక రిజల్యూషన్ రేటు, తక్కువ సమ్మతి ఫ్లాగ్లు
Nano Bananaలో స్థానిక సవరణలను పరిష్కరించడం
- సవరణ వర్తించినట్లు కనిపించడం లేదు
- semantic radiusని తగ్గించండి లేదా మరిన్ని సానుకూల విత్తనాలను జోడించండి
strengthని కొద్దిగా పెంచండి (0.05–0.1 ద్వారా)
- రన్టైమ్ సక్రియ సవరణ సెట్ను లోడ్ చేస్తుందో లేదో నిర్ధారించండి
- చాలా తప్పుడు సానుకూలతలు ఉన్నాయి
- ప్రతికూలతలను జోడించి, radiusని పెంచండి
- ఖచ్చితత్వం కోసం semantic నుండి classifier ట్రిగ్గర్కు మార్చండి
- ప్రతిస్పందనలు బలవంతంగా అనిపిస్తున్నాయి
- టెంప్లేట్ను తగ్గించండి; తేలికపాటి టచ్ కోసం పక్షపాతం మోడ్కు మారండి
strengthని తగ్గించండి; షరతులతో కూడిన నిబంధనను జోడించండి
- ట్రిగ్గర్ గణనను బ్యాచ్ చేయండి; ఎంబెడింగ్ ప్రశ్నలను కాష్ చేయండి
- నిష్క్రియ సవరణలను తొలగించండి; అతివ్యాప్తి చెందుతున్న ట్రిగ్గర్లను నివారించండి
పాలన మరియు ఆడిట్
- రచయిత, ఉద్దేశం, ట్రిగ్గర్లు, లక్ష్యాలు, పరీక్షలు మరియు ఫలితాలతో మార్పులాగ్ను ఉంచండి.
- అధిక-ప్రభావ సవరణల కోసం సమీక్ష అవసరం (సమ్మతి, భద్రత, ఆర్థికం).
- ఆడిట్ చేయగలగడం కోసం ముందు/తర్వాత ఉదాహరణలను స్నాప్షాట్ చేయండి.
అధునాతన నమూనాలు
- క్రమానుగత ట్రిగ్గర్లు: తక్కువ తప్పుడు ఫైర్ల కోసం విస్తృత classifier నిర్దిష్ట semantic ట్రిగ్గర్ను గేట్ చేస్తుంది.
- సమయం-పరిమిత సవరణలు: తేదీ తర్వాత స్వయంచాలకంగా సవరణలను గడువు ముగిసేలా చేయండి; ప్రమోషన్లకు గొప్పది.
- బహుళ-సంస్థ టెంప్లేట్లు: రిజల్వర్తో వేరియబుల్స్ను ఉపయోగించండి:
{{product}}, {{price}}, {{region}}.
మీ స్టాక్లోకి సమీకరించడం
- వెర్షన్ చేయబడిన రిజిస్ట్రీలో సవరణలను నిల్వ చేయండి మరియు మోడల్-సర్వర్ బూట్లో వాటిని లోడ్ చేయండి.
- టాగల్ చేయడానికి, రోల్బ్యాక్ చేయడానికి మరియు ప్రభావాన్ని తనిఖీ చేయడానికి చిన్న అడ్మిన్ UIని బహిర్గతం చేయండి.
- పరిశీలన కోసం ట్రిగ్గర్ పనిచేసినప్పుడు ఈవెంట్లను ప్రసారం చేయండి.
observability:
emit_trigger_events: true
payload: [user_id, prompt_hash, edit_id, activation_score]
మార్గం ద్వారా: Sider.AIతో రచయితను వేగవంతం చేయడం
గుర్తించదగిన విషయం: మీరు అనేక చిన్న సవరణలను నిర్వహిస్తే, రచయిత పరీక్షలు మరియు పర్యాయపదాలు విసుగు తెప్పిస్తాయి. Sider.AI వంటి సాధనాలు పర్యాయపద సూచనలను రూపొందించడానికి, వాస్తవానికి విరుద్ధమైన సూట్లను నిర్వహించడానికి మరియు సవరణ హేతుబద్ధతలను డాక్యుమెంట్ చేయడానికి మీకు సహాయపడతాయి. ఇది మీ ధ్రువీకరణను భర్తీ చేయదు—నాణ్యమైన గేట్లపై దృష్టి పెట్టడానికి మిమ్మల్ని అనుమతించడం ద్వారా విసుగు పుట్టించే భాగాలను వేగవంతం చేస్తుంది. రీకాప్: మీరు తిరిగి ఉపయోగించగల చెక్లిస్ట్
- మీకు కావలసిన ప్రవర్తనను నిర్వచించండి; దానిని ఇరుకైన పరిధిలో ఉంచండి
- ట్రిగ్గర్ రకాన్ని ఎంచుకోండి: semantic, pattern లేదా classifier
- మధ్యస్థ
strength మరియు చిన్న టెంప్లేట్తో ప్రారంభించండి
- సానుకూలతలు, వాస్తవానికి విరుద్ధమైనవి మరియు ఒత్తిడి పరీక్షలను రూపొందించండి
- ధృవీకరించండి, కానరీ చేయండి, పర్యవేక్షించండి మరియు ఆ తర్వాత మాత్రమే అమలు చేయండి
- ప్రతి మార్పును వెర్షన్ చేయండి మరియు రోల్బ్యాక్ను అందుబాటులో ఉంచండి
తదుపరి దశలు
- మీ మొదటి semantic-ట్రిగ్గర్ రీరైట్ సవరణను అమలు చేయండి
- నిరాకరణలతో classifier-ట్రిగ్గర్ భద్రతా సవరణను జోడించండి
- పర్యాయపద ఉత్పత్తి మరియు రిగ్రెషన్ పరీక్షను ఆటోమేట్ చేయండి
- ప్రతి వారం డ్రిఫ్ట్ను కొలవండి మరియు పాత సవరణలను తొలగించండి
మీరు ఈ వర్క్ఫ్లోను అనుసరిస్తే, మీరు Nano Bananaతో స్పష్టమైన, నమ్మదగిన స్థానిక సవరణలను పొందుతారు—రవాణా చేయడానికి వేగంగా, నిర్వహించడానికి సులభం మరియు రోల్బ్యాక్ చేయడానికి సురక్షితం.
FAQ
Q1: Nano Bananaలో స్థానిక సవరణలు అంటే ఏమిటి?
స్థానిక సవరణలు ఒక నిర్దిష్ట పరిధి కోసం మోడల్ యొక్క ప్రవర్తనకు ఖచ్చితమైన మార్పులు. Nano Bananaలో, మీరు ట్రిగ్గర్లు మరియు లక్ష్యాలను నిర్వచిస్తారు, తద్వారా సవరణ సంబంధితమైనప్పుడు మాత్రమే వర్తిస్తుంది, ఇతర చోట్ల రిగ్రెషన్లను తగ్గిస్తుంది.
Q2: రీరైట్, పక్షపాతం మరియు పరిమితి సవరణల మధ్య నేను ఎలా ఎంచుకోవాలి?
వాస్తవిక దిద్దుబాట్లు లేదా టెంప్లేట్ అవుట్పుట్ల కోసం రీరైట్ను ఉపయోగించండి, సూక్ష్మ ప్రాధాన్యత మార్పుల కోసం పక్షపాతాన్ని ఉపయోగించండి మరియు తప్పనిసరి నిరాకరణల వంటి కఠినమైన నియమాల కోసం పరిమితిని ఉపయోగించండి. తేలికగా ప్రారంభించండి (రీరైట్ లేదా పక్షపాతం) మరియు పరీక్షలు విఫలమైతే మాత్రమే పెంచండి.
Q3: సంబంధం లేని ప్రశ్నలను ప్రభావితం చేయకుండా స్థానిక సవరణలను నేను ఎలా నిరోధించగలను?
ప్రతికూలతలతో మీ ట్రిగ్గర్ పరిధిని బిగించండి, semantic radiusని పెంచండి లేదా classifier ట్రిగ్గర్కు మారండి. స్థిరత్వాన్ని నిర్ధారించడానికి ఎల్లప్పుడూ వాస్తవానికి విరుద్ధమైన పరీక్షలను చేర్చండి.
Q4: నేను Nano Bananaలో స్థానిక సవరణను రోల్బ్యాక్ చేయవచ్చా?
అవును. Nano Banana వెర్షనింగ్ మరియు రోల్బ్యాక్కు మద్దతు ఇస్తుంది. ప్రతి సవరణను ధృవీకరించండి, కానరీ రోల్అవుట్ను ఉపయోగించండి మరియు కొలమానాలు క్షీణిస్తే మీరు తక్షణమే తిరిగి వెళ్లడానికి రోల్బ్యాక్ విండోను ఉంచండి.
Q5: నేను స్థానిక సవరణలను సమర్థవంతంగా ఎలా పరీక్షించగలను?
సానుకూల సూచనలు, వాస్తవానికి విరుద్ధమైన సూచనలు మరియు ఒత్తిడి పరీక్షలను సృష్టించండి, ఆపై సక్రియం చేయడానికి ముందు ధృవీకరించండి. నష్టం లేకుండా సవరణ సహాయపడుతుందని నిర్ధారించడానికి ఉత్తీర్ణత రేటు, వాస్తవానికి విరుద్ధమైన డ్రిఫ్ట్ మరియు CSAT వంటి UX కొలమానాలను కొలవండి.