Skip to content

Support connector-scoped OpenAI-compatible request behavior - #9826

Open
dfliess wants to merge 2 commits into
rilldata:mainfrom
dfliess:fix/openai-compatible-request-behavior
Open

Support connector-scoped OpenAI-compatible request behavior#9826
dfliess wants to merge 2 commits into
rilldata:mainfrom
dfliess:fix/openai-compatible-request-behavior

Conversation

@dfliess

@dfliess dfliess commented Aug 20, 2026

Copy link
Copy Markdown
Contributor

Summary

  • add connector-scoped structured_output_mode with the existing json_schema behavior as the default and a json_object fallback that includes the schema in the prompt
  • add a validated extra_body map for provider-specific chat completion fields while rejecting overrides of core request and response-shape fields
  • canonicalize and hash connection cache configuration so nested JSON values cannot alias and credentials are not embedded in cache keys
  • document configuration for OpenAI-compatible endpoints

Motivation

OpenAI-compatible providers differ in structured-output support and provider-specific request extensions. This was motivated by an interoperability report in kairosagentica/kairos-cloud#145.

The defaults remain unchanged for existing OpenAI connectors, and all new behavior is configured per connector.

Test plan

  • go test -race ./runtime/drivers/openai -run "TestComplete(AppliesConnectorRequestBehavior|PassesNestedExtraBody|DefaultsToJSONSchema)|TestOpenValidatesProviderRequestBehavior" -count=1
  • go test ./runtime -run TestGenerateConnectionKey -count=1
  • go test ./runtime/... -run "^$"
  • go vet ./runtime/drivers/openai ./runtime
  • git diff --check upstream/main...HEAD

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.

1 participant