Skip to content

Conversation

@slin1237
Copy link
Collaborator

we intended to introduce other language bindings including

  1. go
  2. node.js
    thus re-organizing bindings to dedicated folder with language name

Checklist

@github-actions github-actions bot added documentation Improvements or additions to documentation dependencies Pull requests that update a dependency file model-gateway labels Nov 14, 2025
@gemini-code-assist
Copy link
Contributor

Summary of Changes

Hello @slin1237, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request undertakes a significant structural reorganization of the project by relocating all Python language bindings into a new, dedicated bindings/python directory. This change is a foundational step towards introducing support for additional language bindings, such as Go and Node.js, as outlined in the PR description. The refactoring ensures a more modular and scalable architecture by centralizing language-specific components, requiring updates across build configurations, documentation, and test pathing to align with the new directory structure.

Highlights

  • Python Bindings Relocation: All Python source files, along with their associated configuration files (pyproject.toml, setup.py, .coveragerc), have been moved from the py_src/ directory to a new dedicated bindings/python/ folder. This reorganization aims to centralize language-specific bindings.
  • Makefile Updates: The Makefile has been significantly updated to reflect the new Python bindings location. It now includes new python-* targets for building, installing, cleaning, and testing the Python package using maturin. Several bench-* targets have also been removed.
  • Documentation and Configuration Alignment: The main README.md has been updated with correct paths and instructions for working with the Python bindings. A new README.md has been added within the bindings/python/ directory to provide specific documentation for the Python package. Test configuration files (conftest.py) have also been adjusted to correctly locate the Python source.
Ignored Files
  • Ignored by pattern: .github/workflows/** (5)
    • .github/workflows/nightly-release-router.yml
    • .github/workflows/pr-test-pd-router.yml
    • .github/workflows/pr-test-rust.yml
    • .github/workflows/release-docker-router.yml
    • .github/workflows/release-pypi-router.yml
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request refactors the Python bindings into a dedicated bindings/python directory, which is a good structural improvement for supporting other language bindings in the future. The changes mostly involve moving files and updating paths in various configuration files.

My review has identified a couple of issues:

  1. The pre-commit target in the Makefile is broken as it references a bench-quick target that has been removed.
  2. The new README.md for the Python bindings contains confusing instructions regarding build and test commands.

I've provided suggestions to fix these issues. Overall, the refactoring is well-executed, but these small fixes are needed to ensure the developer workflow is not broken and the documentation is clear.

@slin1237 slin1237 force-pushed the router-code-struct branch 5 times, most recently from 0339b5e to a48a56d Compare November 14, 2025 19:14
@slin1237
Copy link
Collaborator Author

/gemini review

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

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

Code Review

This pull request refactors the project structure by moving the Python bindings into a dedicated bindings/python directory. This is a good step towards supporting bindings for other languages. The changes mostly involve moving files and updating configuration files like Cargo.toml, Makefile, and pyproject.toml.

My review focuses on the correctness and consistency of these configuration changes. I've found a few minor issues:

  • There are some inconsistencies in the development build commands in the README files.
  • The Makefile has a small inefficiency in the python-check target.

Overall, this is a well-executed refactoring. Addressing the minor points I've raised will improve the developer experience.

@slin1237 slin1237 merged commit b732ffa into main Nov 15, 2025
44 of 45 checks passed
@slin1237 slin1237 deleted the router-code-struct branch November 15, 2025 08:32
key4ng pushed a commit to key4ng/sglang that referenced this pull request Nov 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file documentation Improvements or additions to documentation model-gateway run-ci

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants