feat: add image upload support with compression and increase body limit#39
feat: add image upload support with compression and increase body limit#39Hieuslecong wants to merge 3 commits intontthanh2603:mainfrom
Conversation
Summary of ChangesHello, 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! Bản cập nhật này giới thiệu khả năng Vision (tải ảnh) đầy đủ, cho phép người dùng gửi dữ liệu hình ảnh cùng với các lời nhắc văn bản đến mô hình Gemini thông qua API. Nó bao gồm các thay đổi ở cả phía máy chủ để xử lý và tải ảnh lên dịch vụ của Google, cũng như các cải tiến ở phía client để nén và tối ưu hóa hình ảnh trước khi gửi. Highlights
Changelog
Activity
Using Gemini Code AssistThe 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
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 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
|
There was a problem hiding this comment.
Code Review
This pull request adds support for image uploads (Vision) to the Gemini service. The changes are comprehensive, including updates to the service layer to handle file data, a new provider-level file upload mechanism, and an increased server body limit. Two new Python demo scripts are also included to showcase the new functionality. My review has identified a few issues: a bug in demo_upload.py where an incorrect MIME type is used, a more significant bug in internal/modules/providers/gemini_service.go related to duplicated and inconsistent filename generation for uploads, and a minor maintainability issue with a magic string in the same file. Overall, the implementation is solid, but the identified issues, especially the filename generation bug, should be addressed to ensure robustness.
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Description
This PR introduces full support for Vision (Image Upload) capabilities. Users can now send image data along with text prompts to the Gemini model through the API.
Key Changes
Testing
Summary: Vision support, payload optimization, and client-side image processing.