v1.8.0

Ironclad/rivetv1.8.0Sep 22, 2023by abrenneke

AI Summary

This v1.8.0 release introduces significant improvements to async capabilities and node functionality in the Rivet graph processing system. Key additions include a new RivetUIContext object for UI-related functions, async support for getBody and getUIData, and a getChatNodeEndpoint method for handling additional headers and load balancing in chat nodes.

Key Highlights

  • New RivetUIContext object passed to getEditors, getBody, and getUIData for additional implementation context
  • getBody and getUIData now support async implementations
  • New getChatNodeEndpoint in ProcessContext/createProcessor for headers and load balancing (e.g., Azure OpenAI)
  • Prompt node can now compute token count and output it as a port
  • Fixed GraphProcessor total cost calculation to include split nodes

Breaking Changes

  • HTTP Call node output ID fix may break graphs that relied on the previous incorrect output ID

New Features

  • RivetUIContext object for getEditors, getBody, and getUIData
  • Async support for getBody and getUIData functions
  • getChatNodeEndpoint method for chat node header configuration and load balancing
  • Prompt node token count computation with port output

Full Release Notes

## New Features

- `getEditors`, `getBody`, and `getUIData` are passed a new `RivetUIContext` object with additional information that can be used in their implementations
- `getBody` and `getUIData` can now be async
- Add `getChatNodeEndpoint` to `ProcessContext`/`createProcessor` - can be used to pass additional headers to chat nodes, and for things like load balancing based on endpoint/model selected, if using Azure OpenAI for example.
- Prompt node can compute token count and output it as a port

## Changes & Fixes

- Fix total cost of GraphProcessor not including split nodes
- Fix remote debugger not sending `start` event correctly
- Improve Chat node error handling
- Fix output ID of HTTP Call node (may break some graphs that used it)