개요
Integration 세부사항
| Class | Package | Local | Serializable | JS support | Downloads | Version |
|---|---|---|---|---|---|---|
| ChatWriter | langchain-writer | ❌ | ❌ | ❌ |
Model 기능
| Tool calling | Structured output | JSON mode | Image input | Audio input | Video input | Token-level streaming | Native async | Token usage | Logprobs |
|---|---|---|---|---|---|---|---|---|---|
| ✅ | ✅ | ❌ | ❌ | ❌ | ❌ | ✅ | ✅ | ✅ | ❌ |
인증 정보
WRITER AI Studio에 가입하고 이 Quickstart를 따라 API key를 발급받으세요. 그런 다음 WRITER_API_KEY 환경 변수를 설정하세요:설치
ChatWriter는 langchain-writer package에서 사용할 수 있습니다. 다음과 같이 설치하세요:
인스턴스화
이제 chat completion을 생성하기 위해 model 객체를 인스턴스화할 수 있습니다:사용법
model을 사용하려면 message 목록을 전달하고invoke method를 호출하세요:
Streaming
응답을 stream으로 받을 수도 있습니다. 먼저 stream을 생성하세요:Tool calling
Palmyra X5와 같은 WRITER model은 tool calling을 지원하며, 이를 통해 tool과 그 인자를 설명할 수 있습니다. model은 호출할 tool과 해당 tool의 입력을 포함한 JSON 객체를 반환합니다.Tool 바인딩
ChatWriter.bind_tools를 사용하면 Pydantic class, dictionary schema, LangChain tool, 또는 함수를 model의 tool로 쉽게 전달할 수 있습니다. 내부적으로 이들은 다음과 같은 tool schema로 변환됩니다:
ChatWriter.bind_tools에 전달할 수 있습니다:
Tool 바인딩에 대한 참고사항
ChatWriter.bind_tools() method는 바인딩된 tool을 가진 새 인스턴스를 생성하지 않고, 받은 tools와 tool_choice를 초기 class 인스턴스 속성에 저장하여 ChatWriter 호출 시 Palmyra LLM 호출 중에 parameter로 전달합니다. 이 접근 방식은 function과 graph와 같은 다양한 tool 타입을 지원합니다. Graph는 원격으로 호출되는 WRITER Palmyra tool 중 하나입니다. 자세한 내용은 문서를 참조하세요.
LangChain에서의 tool 사용에 대한 자세한 내용은 LangChain tool calling 문서를 참조하세요.
Batching
요청을 batch로 처리하고max_concurrency를 설정할 수도 있습니다:
비동기 사용
위의 모든 기능(호출, streaming, batching, tool calling)은 비동기 사용도 지원합니다.Prompt template
Prompt template은 사용자 입력과 parameter를 language model을 위한 instruction으로 변환하는 데 도움을 줍니다. 다음과 같이ChatWriter를 prompt template과 함께 사용할 수 있습니다:
API reference
모든 ChatWriter 기능과 설정에 대한 자세한 문서는 API reference를 참조하세요.추가 리소스
WRITER의 model(비용, context window, 지원되는 입력 타입 포함)과 tool에 대한 정보는 WRITER 문서에서 확인할 수 있습니다.Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.