To see the latest features and major improvements across the Writer platform, check out What’s new at Writer.
Knowledge Graph query configuration and inline citations
Added comprehensive query configuration options for Knowledge Graph operations, allowing you to fine-tune search behavior and enable inline citations in responses from the Knowledge Graph chat completions tool and direct Knowledge Graph queries.New query configuration parameters
Thequery_config
parameter is now available for both chat completions with Knowledge Graph tools and direct Knowledge Graph queries. This parameter includes:inline_citations
: Enable inline citations within response text, showing which sources support each part of the responsesearch_weight
: Control the balance between keyword and semantic search (0-100, default: 50)max_subquestions
: Set the maximum number of sub-questions for complex queries (1-10, default: 6)grounding_level
: Control how closely responses match source material (0.0-1.0, default: 0.0)max_snippets
: Set the number of text snippets to retrieve (5-25 recommended, default: 30)max_tokens
: Control the maximum response length (100-8000, default: 4000)keyword_threshold
: Set keyword matching strictness (0.0-1.0, default: 0.7)semantic_threshold
: Set semantic similarity requirements (0.0-1.0, default: 0.7)
Released version 2.3.1 of the Python and Node SDKs
This patch release fixes a bug introduced in version 2.3.0 where theGraph
class wasn’t accessible. The Graph
class is now available in the Python and Node SDKs as it was previously.For more information on working with Knowledge Graphs with the Python and Node SDKs, see the Knowledge Graphs usage guide.langchain-writer v0.3.3
The langchain-writer package now includes the web search tool for chat completions. This tool allows you to search the web for current information during a conversation with a Palmyra model.For more details, see the langchain-writer changelog.Released version 2.3.0 of the Python and Node SDKs
Version 2.3.0 of the Python and Node SDKs adds support for the following new features:- Web search API
- Web search tool for chat completions
- Web connector URLs for Knowledge Graphs
- Image support in chat completions
Web search and web connector URLs
Three new features are now available to enhance your AI applications with web content and search capabilities:Web search API
The new web search tool API allows you to search the web for current information and get real-time results. This tool is useful for finding factual information, news, and data that may not be available in your model’s training data.Key features:- Search for current information and news
- Filter results by domain, time range, and geographic location
- Control search depth and result comprehensiveness
- Support for both general and news-specific searches
Web search tool for chat completions
The web search prebuilt tool for chat completions enables your AI assistant to search the web during conversations with Palmyra models. This allows your AI to provide up-to-date information and answer questions about current events.Web connector URLs for Knowledge Graphs
Web connector URLs allow you to automatically extract and index content from websites into your Knowledge Graphs. This enables you to:- Process single pages or entire sub-pages
- Monitor the status of URL processing
- Exclude specific URLs from processing
- Query web content through your Knowledge Graph
Image support in chat completions
Added support for mixed content in chat completions with Palmyra X5, allowing you to include images directly in your chat messages. This feature enables rich visual conversations without needing to use the separate Vision tool.References
For more information, see the following API reference docs and guides:- Web search tool: API reference and guide
- Web search tool for chat completions: API reference and guide
- Web connector URLs for Knowledge Graphs: API reference and guide
- Chat with images: API reference and guide
Vision chat support for Palmyra X5
Added support for mixed content in chat completions with Palmyra X5, allowing you to include images directly in your chat messages. This feature enables rich visual conversations without needing to use the separate Vision tool.Key capabilities:- Send messages containing both text and images
- Support for multiple images in a single message
- Use of data URLs for local images
- Natural conversation flow with visual context
Web search and web connector URLs released
Three new features are now available to enhance your AI applications with web content and search capabilities:Web search tool API
The new web search tool API allows you to search the web for current information and get real-time results. This tool is useful for finding factual information, news, and data that may not be available in your model’s training data.Key features:- Search for current information and news
- Filter results by domain, time range, and geographic location
- Control search depth and result comprehensiveness
- Support for both general and news-specific searches
Web search tool for chat completions
The web search prebuilt tool for chat completions enables your AI assistant to search the web during conversations with Palmyra models. This allows your AI to provide up-to-date information and answer questions about current events.Web connector URLs for Knowledge Graphs
Web connector URLs allow you to automatically extract and index content from websites into your Knowledge Graphs. This enables you to:- Process single pages or entire sub-pages
- Monitor the status of URL processing
- Exclude specific URLs from processing
- Query web content through your Knowledge Graph
Writer Strands Agents integration released
You can now use Writer’s models with AWS’ Strands Agents, an open-source SDK for building and deploying AI agents. See the new Strands integration guide for setup instructions, configuration, and examples.Released version 2.2.1 of the Python and Node SDKs
Version 2.2.1 of the Python and Node SDKs adds support for filtering files by file type.To filter files by type, use thefile_types
parameter to pass a comma-separated string of file extensions (without the dot) to the files.list
method. The following code shows how to filter for only PDF and DOCX files:files.list
method and its parameters, refer to the List Files API documentation.Writer Instructor integration now supports JSON output
Added support for theWRITER_JSON
mode in the Instructor integration. This mode allows you to receive structured output directly as JSON, following your specified schema, making it easier to work with validated, structured data from LLM responses.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
.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
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.As part of this release, Palmyra X 004 is now called Palmyra X4.
- 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.
- 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.
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 termapplication
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./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
/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.
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 thepalmyra-fin
model ID. The palmyra-fin-32k
model ID is now deprecated.Released Writer LangChain integration
We’re excited to announce the first release oflangchain-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
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.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 |
-
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 |
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