9.29 Release Notes: Sep 24, 2025-Sep 26, 2025¶
Attention
This release has completed. For differences between the in-advance and final versions of these release notes, see Release notes change log.
New features¶
Snowflake Cortex updates¶
Cortex Agent Monitoring (Preview)¶
Cortex Agent Monitoring gives you access to detailed logs and tracing for your agents, accessible through Snowsight. Your agent’s logs include details on LLM planning, tool execution, SQL generation and execution, and more.
For more information, see Monitor Cortex Agent requests.
AI_COMPLETE structured output with type literals (Preview)¶
Use the type literal, a new, streamlined syntax, to define structured JSON output in AI functions. With type literals, your output is structured using a SQL data type definition instead of a JSON schema.
This new feature simplifies use of the response_format
parameter with AI_COMPLETE. Structured output is an important feature for building robust AI data pipelines, so AI_COMPLETE validates each token as it’s generated to ensure the final response perfectly conforms to your schema.
Type literals offer:
Simplified Definitions: Reduce the complexity and length of your structured output definitions.
Increased Readability: Make your SQL queries cleaner and easier to understand at a glance.
Type literals begin with the new TYPE keyword, followed by a SQL OBJECT type describing your structured output:
SELECT AI_COMPLETE(
model => 'claude-3-5-sonnet',
prompt => 'Extract structured data from this customer interaction note: Customer Sarah Jones complained about the mobile app \
crashing during checkout. She tried to purchase 3 items: a red XL jacket ($89.99), blue running shoes ($129.50), and a fitness \
tracker ($199.00). The app crashed after she entered her shipping address at 123 Main St, Portland OR, 97201. She has been a \
premium member since January 2024.',
response_format => TYPE OBJECT(note OBJECT(items_count NUMBER, price ARRAY(STRING), address STRING, member_date STRING))
);
For more information, see AI_COMPLETE structured outputs.
Data pipeline updates¶
CREATE OR ALTER DYNAMIC TABLE (Preview)¶
The CREATE OR ALTER DYNAMIC TABLE command combines the functionality of the CREATE DYNAMIC TABLE command and the ALTER DYNAMIC TABLE command. It executes as a CREATE statement if the dynamic table doesn’t exist. If it does exist, it transforms the dynamic table according to the object definition in the statement.
For more information, see CREATE OR ALTER <object> and CREATE OR ALTER DYNAMIC TABLE.
Data governance updates¶
Data quality: FRESHNESS data metric function improvement¶
You can now associate the FRESHNESS data metric function (DMF) with a table without specifying a column argument, which lets you determine the last time a DML command acted on the table. Previously, you needed to associate the FRESHNESS with a timestamp column to determine the last time the table was modified.
For more information, see the FRESHNESS DMF.
Release notes change log¶
Announcement |
Update |
Date |
---|---|---|
Release notes |
Initial publication (preview) |
Sep 19, 2025 |
Support for Scala version 2.13 (Preview) |
Removed from Extensibility updates |
Sep 22, 2025 |
Cortex Agent Monitoring (Preview) |
Added to New Features |
Sep 24, 2025 |
CREATE OR ALTER DYNAMIC TABLE (Preview) |
Added to Data pipeline updates |
Sep 25, 2025 |
AI_COMPLETE structured output with type literals |
Added to New Features |
Sep 25, 2025 |