Stream HelpersLangChainAdapter
LangChainAdapter
The LangChainAdapter
module provides a way to transform LangChain output streams into AI streams.
See the LangChain Adapter documentation for more information.
Import
import { LangChainAdapter } from "ai"
API Signature
Methods
toAIStream:
Converts LangChain output streams to AIStream.
Examples
Convert LangChain Expression Language Stream
app/api/completion/route.ts
import { ChatOpenAI } from '@langchain/openai';import { LangChainAdapter, StreamingTextResponse } from 'ai';
export async function POST(req: Request) { const { prompt } = await req.json();
const model = new ChatOpenAI({ model: 'gpt-3.5-turbo-0125', temperature: 0, });
const stream = await model.stream(prompt);
const aiStream = LangChainAdapter.toAIStream(stream);
return new StreamingTextResponse(aiStream);}
Convert StringOutputParser Stream
app/api/completion/route.ts
import { ChatOpenAI } from '@langchain/openai';import { LangChainAdapter, StreamingTextResponse } from 'ai';import { StringOutputParser } from '@langchain/core/output_parsers';
export async function POST(req: Request) { const { prompt } = await req.json();
const model = new ChatOpenAI({ model: 'gpt-3.5-turbo-0125', temperature: 0, });
const parser = new StringOutputParser(); const stream = await model.pipe(parser).stream(prompt);
const aiStream = LangChainAdapter.toAIStream(stream);
return new StreamingTextResponse(aiStream);}