Skip to content

Add support for GitHub Models endpoint validation#2995

Open
Gerson-Cabbage wants to merge 1 commit into
odysseus-dev:devfrom
Gerson-Cabbage:fix/github-models-support
Open

Add support for GitHub Models endpoint validation#2995
Gerson-Cabbage wants to merge 1 commit into
odysseus-dev:devfrom
Gerson-Cabbage:fix/github-models-support

Conversation

@Gerson-Cabbage

@Gerson-Cabbage Gerson-Cabbage commented Jun 5, 2026

Copy link
Copy Markdown

Linked Issue

N/A

Type of Change

  • New feature
  • Bug fix
  • Documentation update
  • Refactor

Summary

Add support for GitHub Models as a built-in provider.

Changes

  • Added automatic detection of GitHub Models endpoints (models.github.ai).
  • Added a list of supported GitHub Models.
  • Allows users to connect using a GitHub Personal Access Token.

Supported Models

  • GPT-4o
  • GPT-4o-mini
  • o1
  • o1-mini
  • o3-mini
  • Meta Llama models
  • Microsoft Phi models
  • Mistral models
  • DeepSeek models
  • Cohere models

Checklist

  • I searched existing issues and pull requests for duplicates.
  • I tested the changes locally.
  • The feature works as expected.

How to Test

  1. Open Odysseus.

  2. Add a new API endpoint.

  3. Use:

    Base URL:
    https://models.github.ai/inference

  4. Use a valid GitHub Personal Access Token.

  5. Verify that the provider is detected as github.

  6. Verify that the supported models appear in the model list.

  7. Select a model and confirm successful inference requests.

@github-actions

github-actions Bot commented Jun 5, 2026

Copy link
Copy Markdown

⚠️ PR description — action needed

The following required sections are missing or incomplete. Please update the PR description to address them:

  • Linked Issue — add a reference like Fixes #NNN, a bare #NNN, or a link to the issue.
  • Type of Change — check at least one box.
  • Checklist — check the duplicate-search box to confirm you searched existing issues and PRs.

This comment is deleted automatically once all sections are complete.

@github-actions github-actions Bot added the needs work PR description incomplete — please update before review label Jun 5, 2026
@RaresKeY

RaresKeY commented Jun 5, 2026

Copy link
Copy Markdown
Collaborator

I think we should detect model capabilities and vendors/providers more deterministically instead of continuing to rely on model-name matching. Some providers may not expose capability metadata at all, and others may expose it in different native shapes, so Odysseus needs a normalized capability layer rather than more one-off heuristics. This relates to #2739.

@RaresKeY

RaresKeY commented Jun 5, 2026

Copy link
Copy Markdown
Collaborator

Pre-review automated code review

Findings

[high] routes/model_routes.py:267 - GitHub Models exposes model IDs that the inference API will reject

Why it matters: The fallback list returns bare IDs such as gpt-4o, o1, and DeepSeek-R1. Odysseus sends the selected value unchanged as the request model, but GitHub Models expects publisher-qualified catalog IDs such as openai/gpt-4.1. That can make models appear selectable while inference fails for the selected model.

Suggested fix: Fetch https://models.github.ai/catalog/models and cache the returned id values, or make the curated fallback use the same publisher-qualified IDs. Add a regression test that _probe_endpoint("https://models.github.ai/inference", ...) returns sendable GitHub model IDs.

Validation

Ran: gh pr view, gh pr checks, gh pr diff --patch, GitHub issue/review comment API reads, exact PR-head file reads, coordinator PR-diff verification, and official GitHub Models docs checks.

Not run: pytest, app/browser verification, or live inference with a GitHub PAT. Direct unauthenticated catalog probe was rate-limited and the inference models probe returned 401.

PR hygiene

PR target/template status: targets dev; PR description check is failing and the PR has needs work. Existing comments include bot template feedback and a maintainer note about deterministic provider/capability detection.

Note

Automated pre-review test; I manually checked this before posting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs work PR description incomplete — please update before review

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants