Az Anthropic, a Claude fejlesztője elindította a tőzsdére lépés folyamatát. Ha ez lezárul, a cég részvényeivel a Nasdaqon lehet majd kereskedni, a működéséről és a pénzügyeiről pedig rendszeresen nyilvános adatokat kell közölnie. Az indulás időpontja, a részvények száma és az áruk még nem végleges.
A tőzsdei bevezetés önmagában nem változtatja meg a Claude-ot. Arra viszont emlékeztet, hogy egy AI-modell mögött üzleti vállalkozás áll, amely módosíthatja az árait, a használati korlátokat vagy a kínált modelleket. Engem fejlesztőként ezért az érdekel, mi történik egy Claude-ra épített alkalmazással, ha később másik AI-szolgáltatóra kell váltani.
Én úgy építem fel ezeket a rendszereket, hogy a Claude cserélhető legyen. Az alkalmazás és az AI-szolgáltató közé teszek egy saját interfészt. Így ugyanazt a feladatot később az OpenAI, a Gemini vagy akár egy saját szerveren futó modell is megkaphatja.
Hogyan teszem cserélhetővé a modellt?
Nem hívom meg a Claude API-ját az alkalmazás minden részéből. Készítek egy közös felületet, amely csak azt mondja meg, milyen feladatot kell elvégezni. Például:
- olvasd ki egy esemény adatait a szövegből;
- sorold be az ügyfélszolgálati üzenetet;
- készíts választervezetet.
Ezután egy külön kódrészlet alakítja át a feladatot olyan formára, amit a kiválasztott AI-szolgáltató megért. Az alkalmazás többi részének nem kell tudnia, hogy éppen Claude vagy más modell dolgozik a háttérben.
Az adatok formáját, az ellenőrzéseket, a használati korlátokat és a hibakezelést én határozom meg. Nem engedem, hogy az Anthropic vagy az OpenAI saját válaszformátuma végigterjedjen az egész kódban. Ha később szolgáltatót váltok, elég ezt az egy köztes réteget átírni.
Mire jó a LangChain?
A LangChain egy nyílt forráskódú Python-könyvtár, amelynek JavaScript- és TypeScript-változata is van. Abban segít, hogy több különböző AI-szolgáltatót hasonló módon lehessen meghívni. Egy Python-backendben például ugyanaz az init_chat_model() függvény hozza létre a modellt; a beállítás dönti el, hogy Claude-hoz vagy OpenAI-hoz kapcsolódjon.
from langchain.chat_models import init_chat_model
model = init_chat_model("anthropic:claude-sonnet-4-5")
answer = model.invoke(prompt)Ha másik szolgáltatót szeretnék használni, elsősorban a modell beállítását és a hozzá tartozó hozzáférési kulcsot cserélem, nem az alkalmazás üzleti logikáját.
Ez kényelmes, de nem varázslat. Én a LangChaint is a saját interfészem mögé teszem. Így nemcsak az AI-szolgáltatót, hanem szükség esetén magát a LangChaint is le tudom cserélni.
A modellcsere nem csak egy beállítás
A közös interfész után technikailag tényleg elég lehet átírni egy környezeti változót, és az alkalmazás máris másik modellt hív. Ettől a válaszok még nem lesznek ugyanolyanok.
A modellek eltérően követik az utasításokat, másképp használják a külső eszközöket, és nem ugyanúgy készítenek kötött szerkezetű JSON-választ. Ugyanaz a kérés az egyik modellnél pontos lehet, a másiknál hosszabb, drágább vagy egyszerűen rosszabb. A LangChain csak a meghívás módját egységesíti, ezeket a különbségeket nem tünteti el.
Ezért modellváltás előtt valódi példákkal tesztelem az új modellt. Megnézem, helyesek-e a válaszai, mennyi idő alatt készül el, és mennyibe kerül egy kérés. A váltás csak akkor kész, ha ezeken a teszteken is átmegy.
Mikor kell valódi tartalék?
Egy kisebb belső eszköznél nem tartanék fenn két AI-szolgáltatót folyamatosan. Elég lehet a tiszta interfész és egy tesztkészlet, amit időnként egy másik modellen is lefuttatok.
Más a helyzet, ha az AI kiesése megállítja a rendelést, az ügyfélszolgálatot vagy a publikálást. Ilyenkor kell egy kipróbált tartalék út. Ez nem feltétlenül egy másik modell. Az is jó megoldás lehet, ha az AI-lépés kimarad, és az adatot kézzel is meg lehet adni.
A szolgáltatófüggetlenség számomra ezt jelenti: egyetlen külső API hibája vagy üzleti döntése ne dönthesse el, hogy működik-e tovább az alkalmazásom.
Én is használom a Claude-ot, és bevált. Ettől még időnként ellenőrzöm: cserélhető alkatrész maradt a rendszerben, vagy időközben maga lett az alapzat.
Segítsek?
Ha meglévő PHP- vagy Python-rendszerbe építenél nyelvi modellt, de később is szabadon váltanál az AI-szolgáltatók között, ilyen AI-integrációval foglalkozom. Írd meg, min dolgozol.
Források