Repository navigation
feat(agent): classifier tool with jev and openai decisions providers - #1143
Draft
ionut-mihalache-uipath wants to merge 2 commits into
Draft
ionut-mihalache-uipath wants to merge 2 commits into
ionut-mihalache-uipath wants to merge 2 commits into
Conversation
The Jev classifier internal tool becomes the `classifier` tool, whose model's provider sets the shapes of its arguments: - typesafe (Jev): a `state` and choice / score / noul questions, unchanged. - openai (Decisions API): an `input` (text, or an object or list sent as its JSON text) with optional `images` (job attachments sent as data URLs), and choice / score / predicate questions. Answers are keyed by question name in the Decisions shapes; a refusal is a tool error the agent sees. The shared part (argument modes, startup checks, LLM vs configuration errors, output schema fallback) is provider-agnostic; each provider supplies its question models, request, answer checks and error parsing. The Decisions call goes through the LLM Gateway OpenAI passthrough with the `decisions` API flavor. Requires uipath 2.14.37 (classifier tool models). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01F6qDf7FQSgba7JrYH4j6jw
…ns route The LLM Gateway serves OpenAI's Decisions API and TypeSafe's Jev on a raw vendor decisions route. uipath-llm-client 1.22.0 adds UiPathDecisionsClient for it and moves UiPathJevClient there, so the classifier tool uses that client instead of its own, which posted to the completions route with an API flavor the gateway does not serve. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Summary
The Jev classifier internal tool becomes the
classifiertool. The provider of its model sets the shapes of its arguments:stateand choice / score / noul questions, unchanged.input: text, or an object or list sent as its JSON text.images: job attachments, downloaded and sent as data URLs.The shared part is provider-agnostic: argument modes, startup checks, LLM vs configuration errors, and the output schema fallback. Each provider supplies its question models, request, answer checks and error parsing. Both providers call the LLM Gateway's
/decisionsroute throughuipath-llm-client'sUiPathJevClientandUiPathDecisionsClient.Requires
uipath>=2.14.37anduipath-llm-client/uipath-langchain-client>=1.22.0. Bumps the package to 0.18.33.Testing
test_classifier_tool.pyand the newtest_classifier_decisions.py: 114 classifier tests pass. The full suite passes locally.jev-1.13.0,gpt-6-luna): both returned 200 from/decisions.uv.lockstill has to be regenerated onceuipath2.14.37 anduipath-llm-client1.22.0 are published.🤖 Generated with Claude Code