Eszközök

Mesterséges intelligenciával generált szöveg

NVIDIA Nemotron finomhangolása helyi szabályok és kulturális sajátosságok ismeretére

A főszereplő az NVIDIA, amely a Nemotron nyílt modellcsaládot és a Nemotron-Personas adatkészleteket használja arra, hogy régióspecifikus tudást és viselkedést adjon a nyelvi modellekhez.

NVIDIA Nemotron finomhangolása helyi szabályok és kulturális sajátosságok ismeretére

Ahogy az AI egyre szélesebb körben terjed világszerte, a nyelvi modelleket sokszor általános célokra fejlesztik, és hiányozhat belőlük a helyi ismeret, kulturális nüansz vagy az adott alkalmazáshoz szükséges pontosság. A post-training (utótréning) egy nyílt modellen lehetővé teszi, hogy az adott piac igényeire szabjuk azt: javítja a pontosságot és hasznosságot, miközben segít biztonságosabb interakciókat kialakítani. Ezáltal országok és iparágak nagyobb kontrollt kapnak afelett, hogyan tükrözi az ügynök a helyi prioritásokat.

NVIDIA együttműködött a francia Pleias startuptal a Nemotron-Personas-France létrehozásán, valamint Pleias és a belga KU Leuven egyetemen keresztül a Nemotron-Personas-Belgiumon. Mindkettő része az NVIDIA nyílt Nemotron adatok programjának, amely 12 országra vonatkozó, locale-grounded persona-adatkészletet kínál, amelyeket fejlesztők piacról piacra használhatnak a modellek adaptálásához.

Ez a bemutató lépésről lépésre ismerteti, hogyan lehet a Nemotron modelleket a Nemotron adatcsomagjaival utótréningezni annak érdekében, hogy jobban illeszkedjenek regionális nyelvekhez és kultúrákhoz.

Miért számít a post-training?

Egy gyakorlati példa: ha egy francia útlevélügyi ügyintézői ügynököt fejlesztesz, és a felhasználó ezt írja:

Je ne peux plus me déplacer à cause de ma santé. Comment faire ma demande de passeport?

Egy alapmodell, amelyen nem végeztek utótréninget, olyan válasszal szolgálhat, ami általános és pontatlan, például postai benyújtást javasolva, miközben az aktuális hivatalos eljárás szerint a beadáshoz otthoni ügyintézés (home visit) szükséges lehet. Az ilyen jellegű tévedések elkerüléséhez az NVIDIA kiadta a Nemotron-Personas adatcsomagokat Franciaországra és Belgiumra.

A Nemotron-Personas persona egy szintetikus lakos, amelyet regionális demográfiai, földrajzi, nyelvi és kulturális eloszlásokhoz igazítanak. Egy általános persona például "egy francia felnőtt, akinek útlevélre van szüksége"; egy grounded persona viszont megad életkort, községet, foglalkozást és háztartási jellemzőket a francia népszámlálási adatoknak megfelelően, valamint részletes leírást a munkájáról és mindennapjairól. Ez befolyásolja a kérdés formáját és azt, hogy mi a helyes válasz (például a francia Guyanában a pecsét díja 43 €, míg Franciaország főterületén 86 €).

A bemutató Franciaországot használja példaként, de ugyanaz a munkafolyamat alkalmazható bármely kiadott Nemotron-Personas piacra (például Belgium esetében: holland, francia, német és angol nyelvű lefedettséggel).

Mikor érdemes ezt a munkafolyamatot használni?

Használd ezt a workflow-t, ha van egy alapmodell, amely már rendelkezik bizonyos képességekkel a célzott nyelven, és alkalmazásspecifikus követelményekre kell szabni (szakszókincs, formalitás, válaszstruktúra, továbbítási szabályok). A persona-vezetett szintetikus adatok segíthetnek a lefedettség bővítésében, amikor valós példák szűkösek, korlátozottak vagy hiányosak.

Például a Pleias három Nemotron-Personas datasetet használ (köztük France és Belgium) Lamina nevű gerincgondozó asszisztenshez: néhány valódi betegesetet sokféle, persona-alapú edzésbeszélgetéssé alakítanak, és tesztelik az asszisztenst különböző betegprofilokon. Ahogy a Pleias fogalmaz: „Better grounded data is what makes a small efficient regional-specific model viable.” Fontos megjegyezni, hogy a persona-grounding a lefedettség javítására és a vakfoltok csökkentésére szolgál, nem pedig a vélt igazságosság vagy reprezentáció garanciájaként.

A teljes munkafolyamat áttekintése

A munkafolyamat a célviselkedés meghatározásától a generált tanítóadaton át a finomhangolásig és kiértékelésig köti össze a lépéseket. A Nemotron GitHub repo újrahasznosítható építőkockákat (steps) tartalmaz az adatgeneráláshoz, tréninghez és értékeléshez az NVIDIA NeMo nyílt tréning-stacken alapulva. Emellett találhatók benne agent skills (például testreszabás NVIDIA NeMo Automodel használatával), amelyek segítik a fejlesztőket a lépések munkafolyamatba szervezésében.

Előfeltételek

Szükséges szoftverek és hardver:

  • Python 3.11–3.13, uv, Git, Docker, NVIDIA Container Toolkit
  • hozzáférés a Nemotron repository-hoz
  • egy NVIDIA DGX Station GB300 vagy egy NVIDIA DGX Spark (a folyamat adaptálható más NVIDIA GPU-s rendszerekre is)

A repo klónozása és a v0.2.0 címkére váltás például így történik:

git clone https://github.com/NVIDIA-NeMo/Nemotron.git cd Nemotron git checkout v0.2.0 uv sync --extra data-sdg --extra evaluator uv run nemotron steps --help

A bemutató esetén a használatos mappa a use-case-examples/french-public-service-assistant.

Lépésről lépésre

1) Célviselkedés meghatározása és holdout készlet lefagyasztása

Mielőtt adatot generálsz, határozd meg, mi számít jó válasznak — ezek a követelmények vezérlik a promptokat és a felülvizsgálatot. Például a viselkedésszerződés Franciaországra tartalmazhatja:

  • Közönség: francia felnőttek különböző technikai szinten
  • Feladat: az igazolvány- és jármű-nyilvántartási eljárásokkal kapcsolatos kérdések megválaszolása
  • Nyelv: francia, nyugodt, tiszteletteljes hang
  • Grounding: csak az adott kérdéshez mellékelt hivatalos eljárási szöveg használható; nem szabad díjakat, határidőket vagy beadási útvonalakat kitalálni
  • Biztonság: soha ne kérjen jelszavakat, banki adatokat vagy szoftvertelepítést; ha információ nem ellenőrizhető, utaljon a mairie vagy a service-public.gouv.fr oldalra
  • Kimenet szerkezete: rövid, közvetlen válasz → alkalmazandó dokumentumok/lépések → hivatkozás az adott hivatalos forrásra

A produkciós holdout készlet létrehozása ajánlott (100–300 ember által írt vagy de-identifikált minta), de a bemutató során nem kötelező. A holdout segít a későbbi kiértékelés megbízhatóságában.

2) Szintetikus beszélgetések generálása

2.1 Persona mintavételezése

A Nemotron-Personas-France persona-mezői megadják a szimulált ügyfél hangját. Ezeket úgy használd, hogy változtasd, hogyan kommunikálnak az ügyfelek; ne használj a végleges tanítóadatokban felesleges neveket vagy érzékeny attribútumokat. A példában 2 000 persona mintavételezését javasolják és mentik data/seeds.jsonl-be a scripts/sample_personas.py futtatásával.

2.2 Nyers adatok generálása persona alapján

Az sdg/data_designer lépés minden personát ügyfélüzenetté (scenario) és ügynök-válasszá (answer) alakít. Szükség van egy LLM-re a generáláshoz; a példában Nemotron 3.5 Lightning-et szolgálnak lokálisan vLLM-mel. Fontos beállítás: enable_thinking: false, mert a Lightning alapértelmezetten képes reasoning trace-eket előállítani, és ha ez megjelenik, belekerül a tréningadatba.

A konfiguráció például 2 000 rekord generálására mutat az output_path: use-case-examples/french-public-service-assistant/data/sdg/sft_raw.jsonl-re.

Előnézethez érdemes 8 rekordot leellenőrizni:

uv run nemotron steps run sdg/data_designer -c use-case-examples/french-public-service-assistant/config/sdg_data_designer.yaml preview=true num_records=8

Ha az első minták megfelelnek a viselkedési követelményeknek, futtasd a teljes generálást (DGX Spark esetén 500–1 000 rekord ajánlott indulásként).

2.3 Kimenet szűrése

A scripts/audit_and_split.py futtatásával kiszűröd a formázási hibákat, maradék reasoning-szövegeket vagy persona-nevek szivárgását, majd 90/10 arányban (source_uuid szerint) szétosztod a train.jsonl és validation.jsonl fájlokba.

3) Finomhangolás LoRA-val

Használd az NVIDIA NeMo Automodel által biztosított validált LoRA recepteket Lightning-hez. A tipikus módosítások a datapath-ok és a tréning ütemezés változtatása. DGX Spark esetén memóriahasználat-csökkentéshez javasolt local_batch_size: 1, seq_length: 8192 és --shm-size=16g beállítás.

A tréning például az automodel konténerben futtatható docker paranccsal; figyeld a validation loss alakulását: csökkenés várható, különben ellenőrizd az adatokat.

4) Adapter egyesítése és kiszolgálás

Tartsd meg a LoRA adaptert iterációkhoz; az adaptert átalakító (convert/merge_lora) lépéssel egyesítsd az alap checkpointtal, amely a checkpoints/lightning_fr_merged könyvtárba kerül. Ezt követően szolgáld a modellt vLLM-mel (például --served-model-name lightning-fr, port 8001). A finomhangolt modell így lokálisan lightning-fr néven érhető el; a bázismodell pedig lightning néven.

5) Kiértékelés a bázismodellhez képest

5.1 Kiértékelés futtatása

Egy alacsonyabb veszteség (loss) önmagában nem bizonyítja, hogy az adaptált modell jobb a feladatra. Küldd el ugyanazokat a fagyasztott teszt-promptokat mindkét modellnek, és hasonlítsd össze a válaszokat, emberi vagy automatizált (de emberi felülvizsgálattal preferált) értékeléssel. A repo use-case-examples/french-public-service-assistant/scripts/compare_models.py segít mindkét modell válaszait oldalsó összevetésben elmenteni (eval/comparison.md).

5.2 Az eredmény olvasása

Az értékelési szeletek között szerepel a feladathelyesség (policy-specifikus tények), francia nyelvi minőség, regionális illeszkedés (locale fit), biztonság, robosztusság és a megtartás (retention) — például hogy ne legyen jelentős regresszió általános francia instrukciókban. A várt eredmény: a finomhangolt modell képes a valós kivételek megadására (pl. otthoni látogatás, 3 hónapnál frissebb orvosi igazolás), míg a bázismodell olykor kitalált postai útvonalakat írhat.

Mindig olvasd át minden választ tényellenőrzés céljából: kitalált díjak, határidők vagy dokumentumok, illetve karaktermegszegő kifejezések (például "I am a language model") kritikus hibának számítanak.

Továbblépés és kiegészítők

A bemutató lefedi a teljes post-training folyamatot a Nemotron open modell adaptálásához francia közszolgálati feladatokra: viselkedésszerződés definiálása, persona-grounded szintetikus beszélgetések generálása, LoRA-s finomhangolás, adapter összevonása és kiértékelés a bázismodellhez képest. Ugyanez a ciklus alkalmazható bármely domainre vagy nyelvre: cseréld le a personákat, viselkedési szerződést és a domain-specifikus felülvizsgálókat.

Ha tovább szeretnél menni: a NeMo RL és NeMo Gym receptek segítenek a megerősítéses tanulással (RL) történő finomhangolásban vagy több csomóponton átszóló skálázásban. Fedezd fel a nyílt Nemotron modelleket és adatcsomagokat Hugging Face-en, valamint a Nemotron fejlesztői oldalát további forrásokért. A hangalapú alkalmazásokhoz érdemes megvizsgálni a NVIDIA Nemotron 3.5 ASR-t is, amely 600M paraméteres, streaming beszédfelismerő modell francia és más nyelvekhez.

Maradj naprakész az NVIDIA Nemotron fejlesztéseivel kapcsolatban az NVIDIA hírein, LinkedIn, X, Discord és YouTube csatornákon, illetve csatlakozz a fejlesztői közösséghez a NVIDIA fórumon és a Nemotron Discord csatornán.

Összegzés

A persona-alapú, regionálisan grounded utótréning használata megkönnyíti, hogy egy nyílt alapmodell pontosabban, helyileg releváns módon válaszoljon, csökkentve a kitalált (hallucinated) tényeket és javítva a feladatra vonatkozó megfelelőséget. A Nemotron repo és a hozzá tartozó receptek gyakorlati lépéseket és konfigurációkat adnak ahhoz, hogy fejlesztők piacról piacra adaptálják a modelleket.