ΠΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ° Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ LangChain-style ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ GigaChat
Π‘ΠΎΠ·Π΄Π°ΡΡ issue
Β·
ΠΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ GigaChain
GigaChain β ΡΡΠΎ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π΄Π»Ρ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ·ΡΠΊΠΎΠ²ΡΡ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ (LLM). GigaChain ΡΠ²Π»ΡΠ΅ΡΡΡ ΠΎΡΠ²Π΅ΡΠ²Π»Π΅Π½ΠΈΠ΅ΠΌΒ open sourceΒ ΠΏΡΠΎΠ΅ΠΊΡΠ°Β LangChain.
ΠΡΠ»ΠΈΡΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΡ GigaChain β ΠΎΡΠΈΠ΅Π½ΡΠ°ΡΠΈΡ Π½Π° ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΡΡΡΡΠΊΠΎΡΠ·ΡΡΠ½ΡΡ ΡΠ΅ΡΠ΅Π½ΠΈΠΉ ΠΈ ΡΠΌΠ΅Π½ΠΈΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ Π½Π΅ΠΉΡΠΎΡΠ΅ΡΡΠΌΠΈ, ΠΊΠ°ΠΊΒ GigaChat. ΠΡΠΈ ΡΡΠΎΠΌ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ ΠΏΠΎΠ»Π½ΠΎΡΡΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠΌΠΈ ΠΌΠΎΠ΄Π΅Π»ΡΠΌΠΈ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠ°ΠΌΠΈ LangChain.
GigaChain Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎ ΡΠΏΡΠΎΡΠ°Π΅Ρ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ, ΡΡΠ΅Π±ΡΡΡΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ·ΡΠΊΠΎΠ²ΡΡ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ (LLM). ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ°ΠΊΠΈΡ , ΠΊΠ°ΠΊ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠΎΠ²Β (RAG), ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅Β ΠΌΡΠ»ΡΡΠΈΠ°Π³Π΅Π½ΡΠ½ΡΡ ΡΠΈΡΡΠ΅ΠΌ,Β ΡΡΠΌΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΡΒ Π΄Π°Π½Π½ΡΡ ,Β ΠΈ Π΄ΡΡΠ³ΠΈΡ .
ΠΠ° ΡΠ°Π±ΠΎΡΡ Ρ GigaChat ΠΎΡΠ²Π΅ΡΠ°Π΅ΡΒ ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½ΡΠΉ ΠΌΠΎΠ΄ΡΠ»Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎΡΠΌΠΈΡΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡΡ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ ΡΠΎΡΠΌΠ°ΡΠΎΠΌΒ GigaChat APIΒ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ ΠΈΡ Π² Π²ΡΠ±ΡΠ°Π½Π½ΡΡΒ ΠΌΠΎΠ΄Π΅Π»Ρ.
ΠΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² GigaChain β Π²Β ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π±ΠΎΡΡ Ρ GigaChain ΠΏΠΎΡΠΌΠΎΡΡΠΈΡΠ΅ ΠΊΠΎΡΠΎΡΠΊΠΎΠ΅ Π²ΠΈΠ΄Π΅ΠΎ ΠΈΠ»ΠΈ ΡΠ»Π΅Π΄ΡΠΉΡΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡΠΌ Π½ΠΈΠΆΠ΅.
Π£ΡΡΠ°Π½ΠΎΠ²ΠΈΡΠ΅ GigaChain:
pip install gigachain-community
ΠΠ°ΠΏΡΡΡΠΈΡΠ΅ ΠΏΡΠΎΡΡΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ:
from langchain_core.messages import HumanMessage, SystemMessage
from langchain_community.chat_models.gigachat import GigaChat
# ΠΠ²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ Π² GigaChat
llm = GigaChat(
credentials="<Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΡΠ΅_Π΄Π°Π½Π½ΡΠ΅>",
scope="GIGACHAT_API_PERS",
model="GigaChat",
# ΠΡΠΊΠ»ΡΡΠ°Π΅Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ Π½Π°Π»ΠΈΡΠΈΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ² ΠΠ£Π¦ ΠΠΈΠ½ΡΠΈΡΡΡ
verify_ssl_certs=False,
streaming=False,
)
messages = [
SystemMessage(
content="Π’Ρ ΡΠΌΠΏΠ°ΡΠΈΡΠ½ΡΠΉ Π±ΠΎΡ-ΠΏΡΠΈΡ
ΠΎΠ»ΠΎΠ³, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ ΡΠ΅ΡΠΈΡΡ Π΅Π³ΠΎ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ."
)
]
while(True):
user_input = input("ΠΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ: ")
messages.append(HumanMessage(content=user_input))
res = llm.invoke(messages)
messages.append(res)
print("GigaChat: ", res.content)
ΠΠ±ΡΠ΅ΠΊΡ GigaChat ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ:
-
credentials
β Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄Π»Ρ ΠΎΠ±ΠΌΠ΅Π½Π° ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΡΠΌΠΈ Ρ GigaChat API. Π ΡΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΡ ΠΏΠΎΠ»ΡΡΠΈΡΡ β Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΡΡΡΡΡΠΉ ΡΡΠ°ΡΡ. -
scope
β Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π²Π΅ΡΡΠΈΡ API. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΡΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ:-
GIGACHAT_API_PERS
β Π²Π΅ΡΡΠΈΡ API Π΄Π»Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ Π»ΠΈΡ; -
GIGACHAT_API_B2B
β Π΄ΠΎΡΡΡΠΏ Π΄Π»Ρ ΠΠ ΠΈ ΡΡΠΈΠ΄ΠΈΡΠ΅ΡΠΊΠΈΡ Π»ΠΈΡ ΠΏΠΎ ΠΏΡΠ΅Π΄ΠΎΠΏΠ»Π°ΡΠ΅; -
GIGACHAT_API_CORP
β Π΄ΠΎΡΡΡΠΏ Π΄Π»Ρ ΠΠ ΠΈ ΡΡΠΈΠ΄ΠΈΡΠ΅ΡΠΊΠΈΡ Π»ΠΈΡ ΠΏΠΎ ΠΏΠΎΡΡΠΎΠΏΠ»Π°ΡΠ΅.
ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π² Π²Π΅ΡΡΠΈΡ Π΄Π»Ρ ΡΠΈΠ·ΠΈΡΠ΅ΡΠΊΠΈΡ Π»ΠΈΡ.
-
-
model
β Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ²Π½ΠΎ Π·Π°Π΄Π°ΡΡ ΠΌΠΎΠ΄Π΅Π»Ρ GigaChat. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π·Π°ΠΏΡΠΎΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡΡΡ Π² ΠΌΠΎΠ΄Π΅Π»ΡGigaChat
. -
verify_ssl_certs
β Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΊΠΎΡΠΎΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΡ ΡΠ΅ΡΡΠΈΡΠΈΠΊΠ°ΡΠΎΠ² ΠΠ£Π¦ ΠΠΈΠ½ΡΠΈΡΡΡ. -
streaming
β Π½Π΅ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ ΠΈ ΠΎΡΠΊΠ»ΡΡΠ°Π΅Ρ ΠΏΠΎΡΠΎΠΊΠΎΠ²ΡΡ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΡΠΎΠΊΠ΅Π½ΠΎΠ². ΠΠΎΡΠΎΠΊΠΎΠ²Π°Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ ΠΏΠΎΠ²ΡΡΠΈΡΡ ΠΎΡΠ·ΡΠ²ΡΠΈΠ²ΠΎΡΡΡ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ Π΄Π»ΠΈΠ½Π½ΡΠΌΠΈ ΡΠ΅ΠΊΡΡΠ°ΠΌΠΈ. ΠΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡFalse
.
ΠΠΎΠ»Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ
ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄Π° get_models()
.
llm = GigaChat(
credentials="Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΡΠ΅_Π΄Π°Π½Π½ΡΠ΅",
verify_ssl_certs=False,
)
llm.get_models()
ΠΠ΅ΡΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ GET /models
ΠΊ GigaChat API ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΏΠΈΡΠΎΠΊ Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ΠΌ Π΄ΠΎΡΡΡΠΏΠ½ΡΡ
ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ.
Warning
Π‘ΡΠΎΠΈΠΌΠΎΡΡΡ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ ΡΠ°Π·Π½ΡΠΌ ΠΌΠΎΠ΄Π΅Π»ΡΠΌ ΠΎΡΠ»ΠΈΡΠ°Π΅ΡΡΡ. ΠΠΎΠ΄ΡΠΎΠ±Π½ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠ°ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π·Π°ΠΏΡΠΎΡΠΎΠ² ΠΊ ΡΠΎΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΠΎΠΉ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π²Ρ ΠΈΡΠΈΡΠ΅ Π² ΠΎΡΠΈΡΠΈΠ°Π»ΡΠ½ΠΎΠΉ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ.
ΠΠ»Ρ ΠΏΠΎΠ΄ΡΡΠ΅ΡΠ° ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π° ΡΠΎΠΊΠ΅Π½ΠΎΠ² Π² Π·Π°ΠΏΡΠΎΡΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΌΠ΅ΡΠΎΠ΄ get_num_tokens(str)
:
llm = GigaChat(
credentials="Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΡΠ΅_Π΄Π°Π½Π½ΡΠ΅",
verify_ssl_certs=False,
)
llm.get_num_tokens("Π‘ΠΊΠΎΠ»ΡΠΊΠΎ ΡΠΎΠΊΠ΅Π½ΠΎΠ² Π² ΡΡΠΎΠΉ ΡΡΡΠΎΠΊΠ΅?")
ΠΠ΅ΡΠΎΠ΄ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅Ρ Π·Π°ΠΏΡΠΎΡ POST /tokens/count
ΠΊ GigaChat API ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²Π΅ ΡΠΎΠΊΠ΅Π½ΠΎΠ² Π² ΡΡΡΠΎΠΊΠ΅.
ΠΡΠ»ΠΈ Ρ Π²Π°Ρ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ ΠΏΡΠΈ ΡΠ°Π±ΠΎΡΠ΅ Ρ GigaChain ΡΠ±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ:
- Ρ Π²Π°Ρ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π° ΠΏΠΎΡΠ»Π΅Π΄Π½ΡΡ Π²Π΅ΡΡΠΈΡ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠΈ (v0.2.16+);
- Π²ΠΌΠ΅ΡΡΠΎ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ GigaChain Π½Π΅ ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Ρ ΠΌΠΎΠ΄ΡΠ»ΠΈ LangChain.
ΠΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ LangChain ΠΈ GigaChain Π²ΡΠ·ΡΠ²Π°Π΅Ρ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ ΠΏΡΠΎΡΠ²ΠΈΡΡΡΡ Π΄Π°ΠΆΠ΅ ΠΏΠΎΡΠ»Π΅ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊ. ΠΠ»Ρ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΡΠ»ΠΈΠΊΡΠΎΠ² ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠΈΡΡΠΎΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ Python ΠΈ ΡΡΡΠ°Π½ΠΎΠ²ΠΈΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠ°ΠΊΠ΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²Ρ ΠΎΠ΄ΡΡ Π² ΡΠΎΡΡΠ°Π² GigaChain. ΠΠΎΠ΄ΡΠΎΠ±Π½Π΅Π΅ β Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΠΈΠ³ΡΠ°ΡΠΈΡ Ρ LangChain.
ΠΠ»Ρ Π²ΡΠ²ΠΎΠ΄Π° ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΡΠΏΠΈΡΠΊΠ° ΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½Π½ΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
pip list
Π Π²ΡΠ²ΠΎΠ΄Π΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±ΡΡΡ ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠΎΠ΄Π΅ΡΠΆΠ°Ρ Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ ΡΠ»ΠΎΠ²ΠΎ langchain
.
Note
ΠΡΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΡΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΌΠΎΠ΄ΡΠ»ΠΈ langchain_hub
ΠΈ langsmith
. ΠΠ½ΠΈ Π½Π΅ ΡΡΠ΅Π±ΡΡΡ ΡΠ΄Π°Π»Π΅Π½ΠΈΡ ΠΈ ΠΏΠ΅ΡΠ΅ΡΡΡΠ°Π½ΠΎΠ²ΠΊΠΈ.
Π‘Π°ΠΌΡΠΉ Π½Π°Π΄Π΅ΠΆΠ½ΡΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ ΠΏΡΠΈ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Ρ LangChain β ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½ΠΎΠ²ΠΎΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ Python (Python virtual environment), Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π»ΠΈΡΡ ΠΏΠ°ΠΊΠ΅ΡΡ LangChain.
Π§ΡΠΎΠ±Ρ ΡΠΎΠ·Π΄Π°ΡΡ Π½ΠΎΠ²ΠΎΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ venv, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ:
# Π‘ΠΎΠ·Π΄Π°Π΅Ρ ΡΠΈΡΡΠΎΠ΅ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅ Python
python -m venv .venv
# ΠΠΊΡΠΈΠ²ΠΈΡΡΠ΅Ρ ΡΠΎΠ·Π΄Π°Π½Π½ΠΎΠ΅ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΠ΅
source .venv/bin/activate
# Π£ΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ gigachain
pip install gigachain-community
ΠΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π±ΠΎΠ»ΡΡΠΈΡ ΡΠ΅ΠΊΡΡΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π½ΠΈΠΌΠ°ΡΡ Ρ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΏΡΠΎΠ΄ΠΎΠ»ΠΆΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ Π²ΡΠ΅ΠΌΡ β 10 ΠΌΠΈΠ½ΡΡ ΠΈ Π±ΠΎΠ»Π΅Π΅. ΠΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΠΎΠ²Π΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΡΠ²ΡΠ·Π°Π½Π½ΡΡ Ρ ΠΏΡΠ΅Π²ΡΡΠ΅Π½ΠΈΠ΅ΠΌ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΎΠΆΠΈΠ΄Π°Π½ΠΈΡ.
Π§ΡΠΎΠ±Ρ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ ΡΠ°ΠΊΠΈΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌ, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠΉΡΠ΅ ΠΏΠΎΡΠΎΠΊΠΎΠ²ΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΡΠΎΠΊΠ΅Π½ΠΎΠ² (ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡ streaming=True
):
llm = GigaChat(
credentials="<Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΎΠ½Π½ΡΠ΅_Π΄Π°Π½Π½ΡΠ΅>",
verify_ssl_certs=False,
streaming=True,
)