The identifier to rate limit, like a user ID or an IP address
Ratelimit options
OptionalrequestOptionaltokenRun when the chain starts running.
This method is called multiple times during a chain execution.
To ensure it only runs once, it checks and updates a _checked state.
Serialized chain
Chain input values
Run when the LLM ends running.
If the includeOutputTokens is set to true, the number of tokens
in the LLM completion are counted for rate limiting.
LLM result output
Optional_parentRunId: stringOptional_tags: string[]Run when the LLM starts running.
Serialized LLM
Prompts passed to the LLM
Optional_parentRunId: stringOptional_extraParams: Record<string, unknown>Optional_tags: string[]Optional_metadata: Record<string, unknown>Optional_name: stringCreates a new UpstashRatelimitHandler object with the same ratelimit configurations but with a new identifier if it's provided.
Also resets the state of the handler.
Optionalidentifier: stringOptional new identifier to use for the new handler instance
New UpstashRatelimitHandler instance
Callback to handle rate limiting based on the number of requests or the number of tokens in the input.
It uses Upstash Ratelimit to track the rate limit which utilizes Upstash Redis to track the state.
Should not be passed to the chain when initializing the chain. This is because the handler has a state which should be fresh every time invoke is called. Instead, initialize and pass a handler every time you invoke.