SuYao 24ddd69cd5
refactor(Gemini): migrate generative-ai sdk to genai sdk (#4939)
* refactor(GeminiService): migrate to new Google GenAI SDK and update file handling methods

- Updated import statements to use the new Google GenAI SDK.
- Refactored file upload, retrieval, and deletion methods to align with the new SDK's API.
- Adjusted type definitions and response handling for improved type safety and clarity.
- Enhanced file listing and processing logic to utilize async iteration for better performance.

* refactor(GeminiProvider): update message handling and integrate abort signal support

- Refactored message content handling to align with updated type definitions, ensuring consistent use of Content type.
- Enhanced abort signal management for chat requests, allowing for better control over ongoing operations.
- Improved message processing logic to streamline user message history handling and response generation.
- Adjusted type definitions for message contents to enhance type safety and clarity.

* refactor(electron.vite.config): replace direct import of Vite React plugin with dynamic import

* fix(Gemini): clean up unused methods and improve property access

* fix(typecheck): update color properties to use CSS variables

* feat: 修改画图逻辑

* fix: import viteReact

---------

Co-authored-by: eeee0717 <chentao020717Work@outlook.com>
2025-04-16 23:13:22 +08:00
2025-03-18 17:38:53 +08:00
2025-03-25 18:34:20 +08:00
2025-04-13 08:00:41 +08:00
2024-08-27 11:31:05 +08:00
2024-12-03 10:23:53 +08:00

banner

English | 中文 | 日本語

kangfenmao%2Fcherry-studio | Trendshift Cherry Studio - AI Chatbots, AI Desktop Client | Product Hunt

🍒 Cherry Studio

Cherry Studio is a desktop client that supports for multiple LLM providers, available on Windows, Mac and Linux.

👏 Join Telegram GroupDiscord | QQ Group(575014769)

❤️ Like Cherry Studio? Give it a star 🌟 or Sponsor to support the development!

📖 Guide

https://docs.cherry-ai.com

🌠 Screenshot

🌟 Key Features

  1. Diverse LLM Provider Support:
  • ☁️ Major LLM Cloud Services: OpenAI, Gemini, Anthropic, and more
  • 🔗 AI Web Service Integration: Claude, Peplexity, Poe, and others
  • 💻 Local Model Support with Ollama, LM Studio
  1. AI Assistants & Conversations:
  • 📚 300+ Pre-configured AI Assistants
  • 🤖 Custom Assistant Creation
  • 💬 Multi-model Simultaneous Conversations
  1. Document & Data Processing:
  • 📄 Support for Text, Images, Office, PDF, and more
  • ☁️ WebDAV File Management and Backup
  • 📊 Mermaid Chart Visualization
  • 💻 Code Syntax Highlighting
  1. Practical Tools Integration:
  • 🔍 Global Search Functionality
  • 📝 Topic Management System
  • 🔤 AI-powered Translation
  • 🎯 Drag-and-drop Sorting
  • 🔌 Mini Program Support
  • ⚙️ MCP(Model Context Protocol) Server
  1. Enhanced User Experience:
  • 🖥️ Cross-platform Support for Windows, Mac, and Linux
  • 📦 Ready to Use, No Environment Setup Required
  • 🎨 Light/Dark Themes and Transparent Window
  • 📝 Complete Markdown Rendering
  • 🤲 Easy Content Sharing

📝 TODO

  • Quick popup (read clipboard, quick question, explain, translate, summarize)
  • Comparison of multi-model answers
  • Support login using SSO provided by service providers
  • All models support networking
  • Launch of the first official version
  • Bug fixes and improvements (In progress...)
  • Plugin functionality (JavaScript)
  • Browser extension (highlight text to translate, summarize, add to knowledge base)
  • iOS & Android client
  • AI notes
  • Voice input and output (AI call)
  • Data backup supports custom backup content

🌈 Theme

Welcome PR for more themes

🖥️ Develop

Refer to the development documentation

🤝 Contributing

We welcome contributions to Cherry Studio! Here are some ways you can contribute:

  1. Contribute Code: Develop new features or optimize existing code.
  2. Fix Bugs: Submit fixes for any bugs you find.
  3. Maintain Issues: Help manage GitHub issues.
  4. Product Design: Participate in design discussions.
  5. Write Documentation: Improve user manuals and guides.
  6. Community Engagement: Join discussions and help users.
  7. Promote Usage: Spread the word about Cherry Studio.

Getting Started

  1. Fork the Repository: Fork and clone it to your local machine.
  2. Create a Branch: For your changes.
  3. Submit Changes: Commit and push your changes.
  4. Open a Pull Request: Describe your changes and reasons.

For more detailed guidelines, please refer to our Contributing Guide.

Thank you for your support and contributions!

  • one-api:LLM API management and distribution system, supporting mainstream models like OpenAI, Azure, and Anthropic. Features unified API interface, suitable for key management and secondary distribution.

  • ublacklist:Blocks specific sites from appearing in Google search results

🚀 Contributors



🌐 Community

Telegram | Email | Twitter

Sponsor

Buy Me a Coffee

📃 License

LICENSE

✉️ Contact

yinsenho@cherry-ai.com

Star History

Star History Chart

Description
No description provided
Readme 24 MiB
Languages
TypeScript 92.3%
JavaScript 6.1%
SCSS 0.7%
HTML 0.4%
CSS 0.2%
Other 0.2%