Hugging Face API Unity Integration
This Unity package provides an easy-to-use integration for the Hugging Face Inference API, allowing developers to access and use Hugging Face AI models within their Unity projects.
Table of Contents
Installation
Via Git URL
- Open the Unity project you want to add the package to.
- Go to "Window" > "Package Manager" to open the Package Manager.
- Click the "+" in the upper left hand corner and select "Add package from git URL".
- Enter the URL of this repository and click "Add": https://github.com/huggingface/unity-api.git
Usage
Configuration
After installation, the Hugging Face API wizard should open. If not, open it by clicking "Window" > "Hugging Face API Wizard".
- Enter your API key. Generate keys at: https://huggingface.co/settings/tokens
- Test the API key.
- Optionally, update the endpoints to use different models.
Example Scene
To try the included example scene, follow these steps:
- Click "Install Examples" in the Hugging Face API Wizard to copy the example files into your project.
- Navigate to the "Hugging Face API" > "Examples" > "Scenes" folder in your project.
- Open the "ConversationExample" scene.
- If prompted by the TMP Importer, click "Import TMP Essentials".
- Press "Play" to run the example. You should be able to use the UI to interact with the model.
API Usage in Scripts
The package includes a HuggingFaceAPI
class that you can use from your scripts.
- Import the
HuggingFace.API
namespace in your script. - Call the API method for the task you want.
using HuggingFace.API;
HuggingFaceAPI.TextToImage("a cat in a hat", result => {
// Do something with the result, which in this case is a Texture2D
}, error => {
// Handle errors
Debug.LogError(error);
});
For a more advanced scripting example, refer to the included example scripts.
Tasks
Task | Status |
---|---|
Conversation | [x] |
Text Generation | [x] |
Text to Image | [x] |
Text Classification | [x] |
Question Answering | [x] |
Translation | [x] |
Summarization | [x] |
Sentence Similarity | [x] |
Speech Recognition | [x] |
[x] Implemented.
Support
If you encounter issues or have questions about the package, open an issue on the repository, or ping me (@IndividualKex) on discord.