LangChain on luonnollinen kielenkäsittely- tai NLP-alueen sovelluskehys mallien rakentamiseen ihmisen kaltaisilla kielillä. Ihmiset voivat käyttää näitä malleja saadakseen vastauksia mallista tai keskustellakseen muiden ihmisten tavoin. LangChainia käytetään ketjujen rakentamiseen tallentamalla jokainen keskustelun lause ja olemalla vuorovaikutuksessa edelleen käyttämällä sitä kontekstina.
Tämä viesti havainnollistaa LLM:n ja LLMChainin rakentamisprosessia LangChainissa.
Kuinka rakentaa LLM ja LLMChain LangChainissa?
Voit rakentaa LLM:n ja LLMChainin LangChainissa suorittamalla luetellut vaiheet:
Vaihe 1: Asenna moduulit
Asenna ensin LangChain-moduuli käyttääksesi sen kirjastoja LLM:iden ja LLMChainin rakentamiseen:
pip asennus langchain
Toinen LLM:ien rakentamiseen vaadittava moduuli on OpenAI, ja se voidaan asentaa pip-komennolla:
pip install openai
Vaihe 2: Määritä ympäristö
Määritä ympäristö käyttämällä OpenAI API-avainta ympäristöstään:
tuo meilleimport getpassos.environ['OPENAI_API_KEY'] = getpass.getpass('OpenAI API Key:')
Esimerkki 1: Luo LLM:itä LangChainilla
Ensimmäinen esimerkki on suurten kielimallien rakentaminen LangChainilla tuomalla OpenAI- ja ChatOpenAI-kirjastot ja käyttämällä llm()-funktiota:
Vaihe 1: LLM-chat-mallin käyttäminen
Tuo OpenAI- ja ChatOpenAI-moduulit luodaksesi yksinkertaisen LLM:n käyttämällä OpenAI-ympäristöä LangChainista:
langchain.chat_modelsista tuo ChatOpenAITuo OpenAI osoitteesta langchain.llms
llm = OpenAI()
chat_model = ChatOpenAI()
llm.predict('hei!')
Malli on vastannut 'hei'-vastauksella, kuten alla olevassa kuvakaappauksessa näkyy:
Chat_modelin ennustaa()-funktiota käytetään vastauksen tai vastauksen saamiseen mallista:
chat_model.predict('hei!')Tulos näyttää, että malli on kyselyitä tekevän käyttäjän käytettävissä:
Vaihe 2: Tekstikyselyn käyttäminen
Käyttäjä voi myös saada vastauksia mallista antamalla koko lauseen tekstimuuttujassa:
text = 'Mikä olisi hyvä yrityksen nimi yritykselle, joka valmistaa värikkäitä sukkia?'llm.predict(teksti)
Mallissa on näkynyt useita väriyhdistelmiä värikkäille sukille:
Hanki mallin yksityiskohtainen vastaus käyttämällä ennusta()-funktiota sukkien väriyhdistelmillä:
chat_model.predict(text)
Vaihe 3: Tekstin käyttö sisällön kanssa
Käyttäjä voi saada vastauksen pienellä selityksellä vastauksesta:
langchain.schema tuonti HumanMessagestatext = 'Mikä olisi hyvä nimike värikkäitä vaatteita valmistavalle yritykselle'
viestit = [HumanMessage(content=text)]
llm.predict_messages(viestit)
Malli on luonut yritykselle nimen, joka on 'Creative Clothing Co':
Ennakoi viesti saadaksesi vastauksen myös yrityksen nimeen selityksellä:
chat_model.predict_messages(viestit)
Esimerkki 2: Luo LLMChain LangChainilla
Oppaamme toinen esimerkki rakentaa LLMChainin saadakseen mallin ihmisen vuorovaikutuksen muotoon yhdistämään kaikki edellisen esimerkin vaiheet:
langchain.chat_modelsista tuo ChatOpenAIlangchain.prompts.chatista tuoda ChatPromptTemplate
langchain.prompts.chatista tuoda ChatPromptTemplate
langchain.prompts.chat importista SystemMessagePromptTemplat langchain.prompts.chat importista HumanMessagePromptTemplate
langchain.chainsista tuonti LLMChain
langchain.schema-tuonnista BaseOutputParserclass CommaSeparatedListOutputParser(BaseOutputParser):
def jäsentää (itse, teksti: str):
palauttaa text.strip().split(', ')
Rakenna malli chat-mallille antamalla yksityiskohtainen selitys sen toiminnasta ja rakenna sitten LLMChain()-funktio, joka sisältää LLM-, tulosparser- ja chat_prompt-kirjastot:
template = '''Sinun on autettava luomaan pilkuilla erotettuja luetteloitaHanki luokka käyttäjältä ja luo pilkuilla eroteltu luettelo, jossa on viisi objektia
Ainoa asia pitäisi olla objekti luokasta'''
system_message_prompt = SystemMessagePromptTemplate.from_template(malli)
human_template = '{teksti}'
human_message_prompt = HumanMessagePromptTemplate.from_template(ihmisen_malli)
#Määritä LLMChain kyselyn rakenteen mukaan
chat_prompt = ChatPromptTemplate.from_messages([system_message_prompt, human_message_prompt])
ketju = LLMChain(
llm=ChatOpenAI(),
prompt=chat_prompt,
output_parser=CommaSeparatedListOutputParser()
)
chain.run('värit')
Malli on antanut vastauksen väriluettelon kanssa, koska kategorian tulisi sisältää vain 5 kehotteessa annettua kohdetta:
Siinä on kyse LLM:n ja LLMChainin rakentamisesta LangChainissa.
Johtopäätös
Luodaksesi LLM- ja LLMChainin LangChainilla, asenna LangChain- ja OpenAI-moduulit ja määritä ympäristö sen API-avaimen avulla. Sen jälkeen rakenna LLM-malli käyttämällä chat_model-mallia, kun olet luonut kehotemallin yhdelle kyselylle koko keskusteluun. LLMChainia käytetään rakentamaan ketjuja kaikista keskustelun havainnoista ja käyttämään niitä vuorovaikutuksen kontekstina. Tämä viesti havainnollistaa LLM:n ja LLMChainin rakentamisprosessia LangChain-kehyksen avulla.