Uralstech / UGemini

A Unity C# wrapper for the Google Gemini API.
https://uralstech.github.io/UGemini/
Apache License 2.0
10 stars 2 forks source link
gemini gemini-ai gemini-api gemini-client gemini-pro-api integration openupm unity unity-integration unity-package unity-packages unity3d unity3d-plugin

UGemini

A Unity C# wrapper for the Google Gemini API.

openupm openupm

Installation

This should work on any reasonably modern Unity version. Built and tested in Unity 2022.3.29f1.

From OpenUPM Through Unity Package Manager

  1. Open project settings
  2. Select Package Manager
  3. Add the OpenUPM package registry:
    • Name: OpenUPM
    • URL: https://package.openupm.com
    • Scope(s)
      • com.uralstech
      • com.utilities*
  4. Open the Unity Package Manager window (Window -> Package Manager)
  5. Change the registry from Unity to My Registries
  6. Add the UGemini, Utilities.Async and Utilities.Encoder.Wav packages

From GitHub Through Unity Package Manager

  1. Open the Unity Package Manager window (Window -> Package Manager)
  2. Select the + icon and Add package from git URL...
  3. Paste the UPM branch URL and press enter:
    • https://github.com/Uralstech/UGemini.git#upm

Adding additional dependencies:
Follow the steps detailed in the OpenUPM installation method and only install the Utilities.Async and Utilities.Encoder.Wav packages.

From GitHub Clone/Download

  1. Clone or download the repository from the desired branch (master, preview/unstable)
  2. Drag the package folder UGemini/UGemini/Packages/com.uralstech.ugemini into your Unity project's Packages folder
  3. In the Packages folder of your project, add the following line to the list in manifest.json: "com.uralstech.ugemini": "2.x.x",

Adding additional dependencies:
Follow the steps detailed in the OpenUPM installation method and only install the Utilities.Async and Utilities.Encoder.Wav packages.

*Optional, but Utilities.Async is required for streaming content and Utilities.Encoder.Wav is recommended if you don't want to bother with encoding your AudioClips into Base64 strings manually.

Preview Versions

Do not use preview versions (i.e. versions that end with "-preview") for production use as they are unstable and untested.

Gemini API Support

⚠️ - Not all methods/features are supported
🧪 - Using the v1beta API

Documentation

See https://uralstech.github.io/UGemini/ or refman.pdf in the package documentation for reference manual w/ tutorial.