Changelog
Stay up to date with the latest changes to the Writer API and SDKs.
langchain-writer v0.3.1
The langchain-writer package now includes the translation tool for chat completions. This tool allows you to translate text between languages during chats with Palmyra LLMs.
For more details, see the langchain-writer changelog.
Filter files by type
The /v1/files
endpoint now supports filtering files by extension type.
To filter files by type, pass a comma-separated string of file extensions to the file_types
query parameter. For example, file_types=txt,pdf,docx
.
The file_types
parameter will be available in the next version of the Python and Node SDKs.
Released version 2.2.0 of the Python and Node SDKs
Version 2.2.0 of the Python and Node SDKs adds support the following features:
- Structured output for the chat completions endpoint
- AI detection endpoint
- Text translation endpoint
- The text translation tool for chat completions
The langchain-writer package has been updated to support structured output. See the langchain-writer changelog for more details.
See the API reference documentation for information about the new endpoints and tools:
Palmyra X5 and X4 now available on Amazon Bedrock
Palmyra X5 and X4 are now available on Amazon Bedrock.
Amazon Bedrock is a fully managed service from AWS that enables developers to build and scale generative AI applications using foundation models from leading AI companies. This integration allows you to use Palmyra X5 and X4 in Amazon’s serverless environment.
See the following resources for more information:
Palmyra X5 model now available
The Palmyra X5 model is now available via the API and SDKs.
Palmyra X5 is Writer’s newest and most advanced model for building and scaling AI agents, featuring a 1 million token context window, adaptive reasoning, and industry-leading speed and cost efficiency.
Palmyra X5’s 1M token context window further streamlines enterprise workflows and unlocks complex, multi-step use cases that weren’t possible before, such as:
Multi-step agentic workflows
- Support documentation: Classify requests, assess urgency, assign a human review, stage updates in a CMS, and publish after approval.
- Fund reporting: Streamline the analysis and preparation of detailed reports on the performance and status of investment funds, using reporting and research data pulled in from third-party systems
- Content lifecycle management: Flag content that could be outdated, generate suggested revisions, and share them for human review.
Large data requirements:
- Customer feedback analysis: Analyze large volumes of customer feedback to identify common themes, summarize sentiments, and generate actionable insights.
- Research and development: Process and summarize multiple technical reports, research papers, and experimental data, accelerating innovation and product development.
- Financial reporting: Process and summarize annual reports, SEC filings, and market analysis reports together at once to extract financial data, identify trends, and generate executive summaries.
- Legal document analysis: Analyze lengthy legal documents, including contracts, patents, and compliance reports, to identify key clauses, flag potential risks, and ensure regulatory compliance.
- Medical records analysis: Analyze and summarize large files of medical records containing structured and unstructured data, including patient records, clinical trial reports, audit reports, and more.
See the Palmyra X5 model overview for more details and examples of using Palmyra X5 with the text generation and chat completion endpoints.
Writer LangChain integration now supports Python 3.9
The Writer LangChain integration now supports versions of Python 3.9 and higher, as of version 0.2.0.
Terminology updates
As part of Writer’s recent product announcement, no-code applications are now called no-code agents. The Applications API, which you can use to programmatically interact with no-code agents, still uses the term application
to minimize breaking changes.
The guides for invoking no-code apps, async applications, and using no-code apps as tools have been updated to reflect the new terminology. However, the Applications API reference documentation still reflects previous terminology.
Released version 2.1.0 of the Python and Node SDKs
This release adds support for the vision endpoint and the vision tool for chat completions.
It also adds streaming helper methods to process streaming responses from the chat completions endpoint.
New cookbooks for Palmyra models
We’ve added three new cookbooks to help you explore domain-specific Palmyra models for creative, financial, and medical use cases.
Palmyra Vision now available via the API
The Palmyra Vision model is now available via the API with the /vision
endpoint.
The /vision
endpoint analyzes images based on a prompt. You can use the endpoint for a variety of use cases, including:
- Extracting handwritten text
- Interpreting charts and graphs
- Generating product descriptions
Find additional use cases in the Palmyra Vision overview.
See the vision API guide for a detailed walkthrough of uploading images and passing them to the /vision
endpoint, or check out the full vision API reference.
Released langchain-writer v0.1.0
- Updated tool binding to align with standard LangChain tool calling conventions.
- Added a new
NoCodeAppTool
tool for using no-code applications as tools. - Added a new
LLMTool
tool for delegating to a specific Palmyra model.
See the guide to using the LangChain integration and the package documentation for more details.
New cookbooks for tool calling and no-code applications
We’ve added three new cookbooks to help you get started with no-code applications and tool calling.
Palmyra Fin model updates
Palmyra Fin, our financial model, now has a 128k context window, up from 32k.
To use the Palmyra Fin model in the API and SDKs, use the palmyra-fin
model ID. The palmyra-fin-32k
model ID is now deprecated.
Released Writer LangChain integration
We’re excited to announce the first release of langchain-writer
, the official Writer LangChain integration. This release includes:
- The
ChatWriter
model for text generation - Tool calling capabilities, including the
GraphTool
for retrieving information from a Knowledge Graph - Additional tools like the
PDFParser
for parsing PDFs and theWriterTextSplitter
for intelligent text splitting
Check out the tutorial to get started and the full integration documentation for more details.
Released version 2.0.0 of the Python and Node SDKs
The 2.0.0 release includes new functionality for the Writer SDKs for Python and Node:
- Model delegation tool: A prebuilt, remotely executed tool that lets you delegate domain-specific requests to the appropriate Palmyra model. For example, if your application has finance questions, you can use the tool to allow Palmyra X4 to delegate these questions to Palmyra Financial. Read more in our model delegation guide.
- Retrieve application details: Retrieve details for all of your no-code applications. Programmatically retrieve application inputs rather than relying on the AI Studio UI. This pairs well with our guide on using no-code applications as tools.
- Async jobs: Trigger no-code application content generation asynchronously and retrieve or retry the job at a later time. This is great for long-running no-code applications, such as research assistant applications. To learn more, check out the guide on async jobs.
- Associate Knowledge Graphs with chat applications: Retrieve or update which Knowledge Graphs are associated with no-code chat applications.
The 2.0.0 release includes some breaking changes to the underlying models used in chat completion. This won’t affect you if you are only using chat completion via the Writer.chat.chat
method, but it will if you are importing specific types directly. See below for more details about changes in each SDK.
See the SDK repositories for the full changelogs:
Python SDK
See below for the mapping of old types to new types:
Old | New |
---|---|
chat_chat_params.Tool | types.shared_params.tool_param.ToolParam |
types.Chat | types.chat_completion.ChatCompletion |
types.chat.ChoiceMessageGraphDataSource | types.shared.source.Source |
types.chat.ChoiceMessageGraphDataSubquerySource | types.shared.source.Source |
types.chat_completion_chunk.ChoiceDeltaGraphData | types.shared.graph_data.GraphData |
types.chat_completion_chunk.Usage | types.chat_completion_usage |
types.chat_completion_chunk.ChoiceMessageToolCall | types.shared.tool_call_streaming.ToolCallStreaming |
types.question.Source | types.shared.source.Source |
types.question.SubquerySource | types.shared.source.Source |
Additionally:
-
The
types.chat_completion_chunk.Message
type has been moved to its own model:types.chat_completion_message
. -
types.chat.ChoiceLogprobsContent
,ChoiceLogprobsRefusal
,ChoiceLogprobsContentTopLogprob
, andChoiceLogprobsRefusalTopLogprob
have all been deduplicated and replaced by a shared modeltypes.shared.logprobs_token.LogprobsToken
.
Node SDK
See below for the mapping of old types to new types:
Old | New |
---|---|
ChatResource | Chat |
Chat | ChatCompletion |
Chat.Choice | ChatCompletionChoice |
Chat.Choice.Message | ChatCompletionMessage |
Chat.Choice.Logprobs | Shared.Logprobs |
Chat.Choice.Logprobs.Content | Shared.LogprobsToken |
Chat.Choice.Logprobs.Refusal | Shared.LogprobsToken |
Chat.Usage | ChatCompletionUsage |
ChatCompletionChunk.Choice.Message | ChatCompletionMessage |
ChatCompletionChunk.Choice.Delta | ChatCompletionChunk.Choice.Delta |
ChatCompletionChunk.Choice.Delta.GraphData | Shared.GraphData |
ChatCompletionChunk.Choice.Delta.ToolCall | Shared.ToolCallStreaming |
ChatCompletionChunk.Choice.Logprobs | Shared.Logprobs |
ChatCompletionChunk.Usage | ChatCompletionUsage |
ChatChatParams.Message.GraphData | Shared.GraphData |
ChatChatParams.Message.ToolCall | Shared.ToolCall |
ChatChatParams.StringToolChoice | Shared.ToolChoiceString |
ChatChatParams.JsonObjectToolChoice | Shared.ToolChoiceJsonObject |
ChatChatParams.FunctionTool | Shared.ToolParam.FunctionTool |
ChatChatParams.GraphTool | Shared.ToolParam.GraphTool |
StreamingData | CompletionChunk |
Completion.Choice.LogProbs | Shared.Logprobs |
The Node SDK includes developer experience improvements from Stainless, including using the native fetch
API, resulting in zero SDK dependencies.
Released version 1.6.1 of the Python SDK
- Fixed a typing bug where the
content
field in theFile
did not accept the correctFileTypes
values.
Released Python SDK version 1.6.0 and Node SDK version 1.5.0
- Added streaming support to the applications content generation endpoint and updated the No-code applications guide to reflect this.
Released Python SDK version 1.5.0
- Added new functionality via manual API updates
- Fixed compatibility with the latest
httpx
0.28.0 release - Improved handling of deprecated arguments (
transport
,proxies
) to maintain backward compatibility - Fixed compatibility issues with Pydantic
model_dump
method when warnings are passed - Removed the now unused
cached-property
dependency, as we now rely on the standard library implementation for Python 3.8+ - Enhanced logging documentation in README, adding information about the ‘info’ log level
- Updated the recommended log level from ‘debug’ to ‘info’ for standard usage
- Fixed code formatting for better readability and consistency
- Excluded test files from
mypy
checks to avoid false positives - Updated internal compatibility layer for better type checking
- Improved error handling for deprecated client configuration options