mirror of
https://github.com/langchain-ai/langchain.git
synced 2026-10-05 17:35:28 +03:00
11 KiB
11 KiB
Cell:
[Cell type raw - unsupported, skipped]
In [1]:
from langchain.prompts import ChatPromptTemplate
from langchain.chat_models import ChatOpenAIIn [2]:
model = ChatOpenAI()In [3]:
prompt = ChatPromptTemplate.from_template("tell me a joke about {topic}")In [4]:
chain = prompt | modelIn [8]:
for s in chain.stream({"topic": "bears"}):
print(s.content, end="", flush=True)Sure, here's a bear-themed joke for you: Why don't bears wear shoes? Because they have bear feet!
In [9]:
chain.invoke({"topic": "bears"})Out [9]:
AIMessage(content="Why don't bears wear shoes?\n\nBecause they already have bear feet!", additional_kwargs={}, example=False)In [19]:
chain.batch([{"topic": "bears"}, {"topic": "cats"}])Out [19]:
[AIMessage(content="Why don't bears ever wear shoes?\n\nBecause they have bear feet!", additional_kwargs={}, example=False),
AIMessage(content="Why don't cats play poker in the wild?\n\nToo many cheetahs!", additional_kwargs={}, example=False)]In [5]:
chain.batch([{"topic": "bears"}, {"topic": "cats"}], config={"max_concurrency": 5})Out [5]:
[AIMessage(content="Why don't bears wear shoes?\n\nBecause they have bear feet!", additional_kwargs={}, example=False),
AIMessage(content="Why don't cats play poker in the wild?\n\nToo many cheetahs!", additional_kwargs={}, example=False)]In [13]:
async for s in chain.astream({"topic": "bears"}):
print(s.content, end="", flush=True)Why don't bears wear shoes? Because they have bear feet!
In [16]:
await chain.ainvoke({"topic": "bears"})Out [16]:
AIMessage(content="Sure, here you go:\n\nWhy don't bears wear shoes?\n\nBecause they have bear feet!", additional_kwargs={}, example=False)In [18]:
await chain.abatch([{"topic": "bears"}])Out [18]:
[AIMessage(content="Why don't bears wear shoes?\n\nBecause they have bear feet!", additional_kwargs={}, example=False)]In [7]:
from langchain.schema.runnable import RunnableMap
chain1 = ChatPromptTemplate.from_template("tell me a joke about {topic}") | model
chain2 = ChatPromptTemplate.from_template("write a short (2 line) poem about {topic}") | model
combined = RunnableMap({
"joke": chain1,
"poem": chain2,
})In [11]:
%%time
chain1.invoke({"topic": "bears"})Out [11]:
CPU times: user 31.7 ms, sys: 8.59 ms, total: 40.3 ms Wall time: 1.05 s
AIMessage(content="Why don't bears like fast food?\n\nBecause they can't catch it!", additional_kwargs={}, example=False)In [12]:
%%time
chain2.invoke({"topic": "bears"})Out [12]:
CPU times: user 42.9 ms, sys: 10.2 ms, total: 53 ms Wall time: 1.93 s
AIMessage(content="In forest's embrace, bears roam free,\nSilent strength, nature's majesty.", additional_kwargs={}, example=False)In [13]:
%%time
combined.invoke({"topic": "bears"})Out [13]:
CPU times: user 96.3 ms, sys: 20.4 ms, total: 117 ms Wall time: 1.1 s
{'joke': AIMessage(content="Why don't bears wear socks?\n\nBecause they have bear feet!", additional_kwargs={}, example=False),
'poem': AIMessage(content="In forest's embrace,\nMajestic bears leave their trace.", additional_kwargs={}, example=False)}In [ ]: