Skip to content

langchain driver for OW. bug fixes along the way - #292

Merged
Vman11 merged 7 commits into
mainfrom
dev/agentic-ow-driver
Sep 11, 2026
Merged

Vman11 merged 7 commits into
mainfrom
dev/agentic-ow-driver

Conversation

@Vman11

@Vman11 Vman11 commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

No description provided.

Comment thread align_system/drivers/itm_open_world.py
Comment thread align_system/drivers/itm_open_world_langchain.py Outdated
Comment thread align_system/interfaces/ta3_caci_action_based_service.py
Comment thread align_system/utils/action_completion.py Outdated
Comment thread align_system/utils/vllm_chat_model.py Outdated
Comment thread align_system/utils/vllm_chat_model.py Outdated
@Vman11
Vman11 force-pushed the dev/agentic-ow-driver branch from e4e4893 to 3abcf86 Compare September 9, 2026 14:10
@Vman11
Vman11 force-pushed the dev/agentic-ow-driver branch from c4072fa to 31bba30 Compare September 9, 2026 14:21

@dmjoy dmjoy left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the updates Vinnie. I'm mostly fine to merge this version in and we can follow up with another PR to address the driver -> (driver, adm) refactor and a non-random solution for parameter completion.

Comment on lines +13 to +26
Why a LangChain chat model rather than a ``StructuredInferenceEngine``
(e.g. ``align_system.algorithms.vllm_inference_engine``)? That
interface produces a single schema-constrained JSON completion per
prompt, while the agent loop needs a multi-turn chat model with native
tool calling -- binding tool schemas to the model, parsing tool calls
out of its responses, and feeding tool results back as messages --
which is what LangChain's chat model classes provide. For vLLM in
particular, tool-call parsing is implemented only in its
OpenAI-compatible server (``vllm serve --enable-auto-tool-choice
--tool-call-parser ...``), not in the in-process ``vllm.LLM`` API the
inference engine wraps, so HuggingFace models are reached through
``langchain_openai.ChatOpenAI`` pointed at a separately started ``vllm
serve`` process (see configs/driver/chat_model/vllm_*.yaml).
"""

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good to know, thanks for adding this.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Again I don't like that the driver here is doing the work of driver and ADM; but we can split it out in a follow-up PR.


# Fills in required-but-missing action parameters for actions
# the driver takes on the agent's behalf
self._parameter_completer = OWRandomParameterCompletionADMComponent()

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Random is an OK placeholder for now; but even for a baseline we want the LLM making those decisions.

Comment thread align_system/utils/vllm_chat_model.py Outdated
@Vman11
Vman11 merged commit aaaa595 into main Sep 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants