Llama-2-70b vs. GPT-3.5-turbo
Srovnání velkých jazykových modelů (LLM) na přepisech telefonních hovorů
Už delší dobu se zabýváme využitím LLM v oblasti analýzy obsahu, a tak se v následujícím článku zaměříme na srovnání dvou zásadních hráčů na poli velkých jazykových modelů: Llama-2-70b a GPT-3.5-turbo, a jejich využití při analýze komunikací z call centra. Jako vstupní data nám sloužily přepisy telefonických hovorů operátorů kontaktního centra v oblasti pojišťovnictví s klienty (dotazy na úhradu pojistky, poradenství ohledně nových produktů, pojistné události atp.).
Od LLM jsme očekávali například shrnutí hovoru jednou větou (sumarizaci), extrakci klíčových slov, určení tématu či důvodu, proč byla komunikace uskutečněna. Naším cílem bylo porovnat spolehlivost odpovědí modelů, jak po stránce formy (výstup standardizovat pro další agregované užití) i po obsahové stránce (klíčová slova, téma hovoru, sumarizace). Cílem bylo i zjistit časovou náročnost pro dosažení relevantních výstupů.
Metodika
Pro porovnání vybraných modelů jsme přes API odesílali requesty včetně promptu a přijaté response jsme parsovali tak, aby obdržené odpovědi skončily v indexu jako samostatná pole. Díky naparsování do indexu pak bylo možné mezi sebou snadno porovnávat a vyhodnocovat odpovědi z obou modelů.
Naše testování probíhalo na malém vzorku dat a jde tak spíše o kvalitativní srovnání, než kvantitativní, přesto nám dalo indikativní informace o chování modelů.
Prompt byl na počátku použit stejný pro oba modely, a postupně jsme ho ladili. První verze promptu obsahovaly jednoduché otázky a samotný obsah přepisu. V dalších verzích jsme postupně přidávali parametry v podobě instrukcí [INST] a systémového promptu <<SYS>>. GPT byl schopen odpovědět i bez těchto parametrů, ale Llama bez nich dávala velmi nekonzistení výstupy, které nebylo možné parsovat a dále agregovaně použít. Prompting u modelu Llama-2-70b nám přišel techničtější, resp. složitější na sepsání všech pokynů pro získání použitelného výstupu. GPT je při tvorbě promptu intuitivnější a požadované výstupy lze získat snadněji.
Příklady kvalitativního rozdílu mezi modely
Model Llama2 měl v instrukcích zadáno, aby odpovídal pouze v češtině, přesto nám v několika případech dal odpověď s přechodem z češtiny do angličtiny:
GPT neměl problém s formátem výstupu, llama oproti tomu ano. Někdy zopakuje v odpovědi část či celou instrukci z promptu:
Méně obratná čeština u Llamy:
Výsledky
Do promptu jsme dávali několik otázek týkajících se přepisu hovoru. Níže přinášíme zhodnocení dvou vybraných - sumarizaci hovoru a jeho klíčová slova:
- Sumarizace:
Llama-2-70b občas přeskakuje do jiných jazyků, přestože v instrukcích explicitně bylo zadáno odpovídat v češtině. To může být způsobeno i tím, že GPT model obsahuje cca dvakrát více textů v českém jazyce oproti Llamě. GPT-3.5-turbo je lepší v konzistenci formy odpovědí, jinak jsou výsledky relativně srovnatelné. - Důvod hovoru - klíčová slova:
GPT-3.5-turbo dává o maličko lepší výstupy (v obsahu i formě odpovědí), ale Llama-2-70b je též na solidní úrovni.
Posuďte níže sami.
Závěr
V našem testování se ukázalo, že bez využití fine-tuningu či složitějšího prompt-tuningu je model GPT-3.5-turbo o něco vhodnější pro analýzu přepisů telefonních hovorů, především díky lepší konzistenci odpovědí a efektivnějšímu psaní a zpracování promptu. Jednoduše řečeno, lze u něj dosáhnout rychleji a snadněji lepších výsledků.
I po použití složitějších instrukcí a systémového promptingu byla cca pětina odpovědí z Llama-2-70b ať už po formální či obsahové stránce nepoužitelných.
Nicméně, Llama-2-70b má potenciál dosáhnout dobrých výsledků, jen vyžaduje více času a úsilí při nastavování requestu a celého procesu, než jsme tomu v rámci testování byli ochotni věnovat. Jde o ladění promptu, popřípadě využití fine-tuningu, který je obecně doporučován.
Na základě výše uvedeného se chystáme provést další testování a srovnání za využití fine-tuningu. Model llama2 máme nasazený už i on-premise na NVIDIA DGX Station A100.