rivet

The open-source visual AI programming environment and TypeScript library

MIT License

Stars
2.3K

Bot releases are hidden (Show)

rivet - Latest Release

Published by abrenneke 3 months ago

Bug Fixes

  • Removed accidentally left in console.dir statements
rivet - v1.19.0

Published by abrenneke 3 months ago

New Features

  • Added new Delegate Function Call node
  • Assistant chat message type now can have function_calls for parallel function calling support.
  • Add gpt-4o and gpt-4o-mini as possible models
  • (Anthropic Plugin) Add claude-3-5-sonnet-20240620 as a possible model

Bug Fixes & Tweaks

  • Correctly attach onGraphStart, onGraphError, and onGraphFinish for createProcessor. (#416)
  • Chunk node correctly uses input port
  • Slice node correctly uses input ports
  • Updated AssemblyAI package (#427)
rivet - Rivet Libraries 1.18.1

Published by abrenneke 5 months ago

Bug Fixes

  • Fix Vector Store and Vector KNN nodes not being able to use input ports for the collection ID.
rivet - Rivet Libraries v1.18.0

Published by abrenneke 5 months ago

New Features

  • Support binary output in Http Call node
  • Add internal support for latest gpt-4-turbo
rivet - Rivet Libraries v1.17.9

Published by gogwilt 6 months ago

New Features

  • (Anthropic Plugin) Claude 3 support for tool usage.

Bug Fixes

None

rivet - Rivet Libraries v1.16.0

Published by abrenneke 7 months ago

New Features

  • (Anthropic Plugin) Full Claude 3 support!
  • Get Embedding node can be provided a model, and a number of dimensions to generate
  • (AssemblyAI Plugin) Allow sending additional parameters via a JSON object
  • (Pinecone Plugin) Allow object data to be passed and stored in the metadata

Fixes & Changes

  • Update AssemblyAI library to latest
  • Allow accessing project path via project metadata
rivet - Rivet Libraries v1.14.3

Published by abrenneke 8 months ago

Minor Changes

  • Chat node can optionally not send presence_penalty and frequency_penalty if those parameters are unset
  • Do not always override an assistant's tools list in Run Thread node
  • Support sending a file name to OpenAI with the Upload File node
  • Retry on OpenAI API 408 timeout
  • Ignore empty event lines logging when reading event stream (less log spam)
rivet - Rivet Libraries v1.14.2

Published by abrenneke 9 months ago

Bug Fixes & Minor Changes

Not quite just a patch but should be backwards compatible, sorry!

  • Fix regression in 1.14.1 causing hanging or rejected promises with object -> string conversions
  • Add GPT-3.5 1106
  • (Anthropic Plugin) Support Claude 2.1
  • (Anthropic Plugin) Better error handling, won't retry client errors
  • (OpenAI Plugin) Fix Run Thread Node not waiting for run to finish to completion
  • Support GPT parallel function calling (Chat node will return function-calls instead of function-call when enabled)
rivet - Rivet Libraries v1.14.1

Published by abrenneke 9 months ago

Bug Fixes & Improvements

  • Fix Destructure Node wrapping single-value results in arrays. If you do $.path and it only matches one thing, you will get "result" out instead of ["result"]
  • Validate HTTP Call Node URLs before calling them
  • Improve Object Node type inference - if the type being returned is an object, it will correctly return object[] instead of object to improve type coercion in later nodes.
  • Improve type coercion for type: 'object' values. This is now treated more or less the same as an any (the actual type is inferred by the value's type). This improves coercion to string for arrays.
  • Fix isSplitSequential being serialized to project file.
rivet - Rivet Libraries v1.14.0

Published by gogwilt 10 months ago

New Features

  • Google Gemini Plugin.

Bug Fixes

  • Packages updated.
  • AssemblyAI plugin and package updated.
  • Fix concurrent chat node with local LLM (#249)
  • Fix creating objects with type and value properties.
  • Fix abort/subscribe memory leak.
rivet - Rivet Libraries v1.13.4

Published by abrenneke 11 months ago

Bug Fixes

  • Fix circular import with ESM importing (might be esbuild specific)
rivet - Rivet Libraries v1.13.3

Published by abrenneke 11 months ago

Fixes

  • Fix base64 encoding when executing in Node.js, which fixes GPT-4 Vision being used there
rivet - Rivet Libraries v1.13.2

Published by abrenneke 11 months ago

Tweaks & Fixes

  • Fixed NodeDatasetProvider not preserving options such as save when it does not find a data file.
  • Added requireFile option to NodeDatasetProvider, so that it can error when it does not find a dataset file.
  • Better coercion of messages input for Run Thread node.
  • Fix a Run Thread node error message.
  • Correct functions input data type for Run Thread node.
  • Run Thread passes a message input for the "on message creation subgraph" like the docs say
rivet - Rivet Libraries v1.13.1

Published by abrenneke 11 months ago

Tweaks & Bug Fixes

  • Fixed request token count being 0 when number of choices is unset (1)
  • Account for GPT functions in token counting by approximating what OpenAI does to calculate their token counts.
rivet - Rivet Libraries v1.13.0

Published by abrenneke 11 months ago

New Features

  • Support for new OpenAI GPT-4 Turbo model!
  • Support for new OpenAI GPT-4 Vision model!
  • Full support for new OpenAI Assistants API! Use the new OpenAI plugin.
  • Switched from deprecated OpenAI function calling API to new OpenAI Tools API. Existing graphs may break because the new API requires a tool_id to be passed for function call responses.
  • New Nodes:
    • Assemble Message - Used with GPT-4 Vision, this allows you to assemble a single chat message that contains both textual parts and image parts!
    • URL Reference - Used with GPT-4 Vision and the Assemble Message node, this allows you to reference a URL image instead of uploading an image.
    • Destructure - A simplified version of the Extract Object Path node, this allows you to extract multiple paths from an object at once, avoiding the need for multiple Extract Object Path nodes.
    • Replace Dataset - Replace the contents of a dataset with new values, or clear a dataset when no values are passed in.
  • Support for new OpenAI seed parameter
  • Support for forcing a Chat node to run a specific tool (OpenAI)
  • Support for OpenAI JSON output mode
  • If/Else and If node now outputs control-flow-excluded for unconnected ports by default, instead of undefined. Existing If/Else and If nodes still will have the old behavior.
  • Read File node can now read files as binary, instead of only text.
  • Remote debugger can pass context values in dynamicGraphRun

Changes & Fixes

  • Fix loop controller infinite looping
  • Loop controller node now allows non-default input ports to be "Not Ran". This will pass through to the output ports. If any "Default" input port is excluded, then the whole loop controller will not run.
  • Fix ghost opened projects
  • Code node now defaults to input1 and output instead of input and output
  • Fixed node port types being incorrect
  • Code now will error if it doesn't return the values it expects
  • Fixed Extract Object Path erroring when the input value is undefined or null
  • Arrays are now inferred correctly, such as with Trivet test inputs
  • (internal) getTokenCountForMessages is now async
  • ChatMessage is now a union of SystemChatMessage, UserChatMessage, AssistantChatMessage, and FunctionResponseChatMessage
  • The message of a chat message is now a ChatMessagePart | ChatMessagePart[] to support images in chat messages.
  • Text editors can now have placeholders and max length
  • Added file path browser editor definition
  • nodeExcluded event now includes inputs, outputs, and reason
  • Loop controller node now consumes control-flow-excluded
rivet - Rivet Libraries v1.12.0

Published by abrenneke 11 months ago

New Features

  • Release Rivet CLI - run rivet graphs from the command line easily!
  • Node editors can mark a field as autoFocus
  • Add ability for nodes to be enabled/disabled
  • Add support for a "main graph" in a project, and made graphId optional when creating a GraphProcessor, which will run the main graph, if it's set for a project.
  • Node ports can have descriptions
  • Added chatNodeTimeout setting to Settings interface to set a timeout for the initial response from the LLM.
  • Assemble Prompt node can now compute token count for all messages
  • Added overrideMaxTokens to chat node, to override the max allowed tokens for a model
  • Added "All Messages" output to Chat node
  • Added optional input ports to GptFunctionNode to allow name, description, and schema to be passed in as inputs
  • GptFunctionNode now supports {{interpolations}} like the Prompt node and Text nodes.
  • Loop Controller node can now break at max iterations instead of always erroring
  • Added Match node exclusive mode, only one matching regex will be passed through

Changes & Fixes

  • Move most of createProcessor into @ironclad/rivet-core as createCoreProcessor. createProcessor in rivet-node still functions the same way.
  • Moved Loop Controller max iteration tracking into the loop controller node itself.
  • Prompt node will stringify the function call arguments if necessary
  • AssemblyAI plugin now uses AssemblyAI SDK
  • Added fake local-model model to models list
rivet - Rivet IDE v1.5.4

Published by abrenneke 12 months ago

New Features

  • Support legacy OpenAI models (0301)

Bug Fixes

  • Fix sequential splitting not saving
rivet - Rivet Libraries v1.11.1

Published by abrenneke 12 months ago

Fixes & Tweaks

  • Fix Split Sequentially not saving in graphs
  • Support for legacy OpenAI models
rivet - Rivet IDE v1.5.3

Published by abrenneke 12 months ago

New Features

  • Add input ports to Trim Chat Messages Node for "max token count" & "from beginning"
  • Add configurable rendering for User Input node - currently can choose between Preformatted and Markdown.
  • Status bar now shows the execution time of your graph in addition to token count & cost.
  • Loop controller now has nicer grouped port rendering!
  • Add iteration output to loop controller (starts at 1)
  • Add variable name output to Get Global and Set Global nodes

Changes & Bug Fixes

  • Updated all dependencies to latest
  • Fix some dropdowns occasionally not being visible
  • Fix an empty header name causing chat node to fail
  • Fixed scrolling test cases list
  • Code node now gives better error when it doesn't output a valid object.
  • HTTP Call node now gives better error when it's likely a CORS problem
rivet - Rivet Libraries v1.11.0

Published by abrenneke 12 months ago

New Features

  • Add simplified streaming of graph events - an async generator via createProcessor(...).getEvents(spec) and an SSE implementation via createProcessor(...).getSSEStream(spec). See docs for more info.
  • Add simplified streaming for a single node via createProcessor(...).streamNode(nodeIdOrTitle) (SSE)
  • GraphProcessor now emits a finish event when it has either completed successfully or failed
  • Add input ports to Trim Chat Messages Node for max token count & "from beginning"
  • Add an iteration output to the loop controller node
  • Add variable name output to get and set global nodes

Changes & Bug Fixes

  • Updated all dependencies to their latest versions
  • Fix empty header causing chat node to error
  • Better code node error when it doesn't return something valid
  • Better HTTP Call node errors