From 1faac7e380ea16db82ec22b534f229e5c707d58c Mon Sep 17 00:00:00 2001 From: Zack Zhiyuan Li Date: Thu, 22 Aug 2024 20:46:01 -0700 Subject: [PATCH 1/2] add assets --- .gitignore | 3 --- README.md | 25 +++++++++++++++++++++++++ assets/banner.png | Bin 0 -> 99644 bytes 3 files changed, 25 insertions(+), 3 deletions(-) create mode 100644 assets/banner.png diff --git a/.gitignore b/.gitignore index 9ff7b7f7..047b7b5e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,9 +1,6 @@ # Files *.safetensors *.gguf -*.png -*.jpeg -*.jpg *.bin *.mp3 *.wav diff --git a/README.md b/README.md index 72588a51..5e90991d 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,31 @@ # Nexa SDK +<<<<<<< Updated upstream The Nexa SDK is a comprehensive toolkit for supporting **ONNX** and **GGML** models. It supports text generation, image generation, vision-language models (VLM), and text-to-speech (TTS) capabilities. Additionally, it offers an OpenAI-compatible API server with JSON schema mode for function calling and streaming support, and a user-friendly Streamlit UI. +======= +

Nexa SDK

+ + icon + +[![MacOS][MacOS-image]][release-url] [![Linux][Linux-image]][release-url] [![Windows][Windows-image]][release-url] + +[![GitHub Release](https://img.shields.io/github/v/release/NexaAI/nexa-sdk)](https://github.com/NexaAI/nexa-sdk/releases/latest) [![Build workflow](https://img.shields.io/github/actions/workflow/status/NexaAI/nexa-sdk/ci.yaml?label=CI&logo=github)](https://github.com/NexaAI/nexa-sdk/actions/workflows/ci.yaml?query=branch%3Amain) ![GitHub License](https://img.shields.io/github/license/NexaAI/nexa-sdk) + + + +[![Discord](https://dcbadge.limes.pink/api/server/thRu2HaK4D?style=flat&compact=true)](https://discord.gg/thRu2HaK4D) + +[On-device Model Hub](https://model-hub.nexa4ai.com/) / [Nexa SDK Documentation](https://docs.nexaai.com/) + +[release-url]: https://github.com/NexaAI/nexa-sdk/releases +[Windows-image]: https://img.shields.io/badge/windows-0078D4?logo=windows +[MacOS-image]: https://img.shields.io/badge/-MacOS-black?logo=apple +[Linux-image]: https://img.shields.io/badge/-Linux-333?logo=ubuntu + + + +Nexa SDK is a comprehensive toolkit for supporting **ONNX** and **GGML** models. It supports text generation, image generation, vision-language models (VLM), and text-to-speech (TTS) capabilities. Additionally, it offers an OpenAI-compatible API server with JSON schema mode for function calling and streaming support, and a user-friendly Streamlit UI. +>>>>>>> Stashed changes ## Features diff --git a/assets/banner.png b/assets/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..fcaa3859d113f3a510a0e4ff38cfc785f4c5a3f2 GIT binary patch literal 99644 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 z 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

Fgp;PUuxb5_;abusRU2}^Y$8_MI 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 qQ+o)-H#~THUO-G9!?2 Date: Thu, 22 Aug 2024 20:48:12 -0700 Subject: [PATCH 2/2] update readme --- README.md | 146 ++++++++++++++++++++++++------------------------------ 1 file changed, 66 insertions(+), 80 deletions(-) diff --git a/README.md b/README.md index 5e90991d..554fc8d6 100644 --- a/README.md +++ b/README.md @@ -1,8 +1,5 @@ -# Nexa SDK +

-<<<<<<< Updated upstream -The Nexa SDK is a comprehensive toolkit for supporting **ONNX** and **GGML** models. It supports text generation, image generation, vision-language models (VLM), and text-to-speech (TTS) capabilities. Additionally, it offers an OpenAI-compatible API server with JSON schema mode for function calling and streaming support, and a user-friendly Streamlit UI. -=======

Nexa SDK

icon @@ -25,7 +22,6 @@ The Nexa SDK is a comprehensive toolkit for supporting **ONNX** and **GGML** mod
Nexa SDK is a comprehensive toolkit for supporting **ONNX** and **GGML** models. It supports text generation, image generation, vision-language models (VLM), and text-to-speech (TTS) capabilities. Additionally, it offers an OpenAI-compatible API server with JSON schema mode for function calling and streaming support, and a user-friendly Streamlit UI. ->>>>>>> Stashed changes ## Features @@ -39,7 +35,7 @@ Nexa SDK is a comprehensive toolkit for supporting **ONNX** and **GGML** models. - **Vision-Language Models (VLM)** - **Text-to-Speech (TTS)** -Detailed API documentation is available [here](docs/index.html). +Detailed API documentation is available [here](https://docs.nexaai.com/). - **Server:** - OpenAI-compatible API @@ -49,124 +45,114 @@ Detailed API documentation is available [here](docs/index.html). ## Installation -### GPU version(optional) +### Pre-built Wheels (Recommended) -check if you have GPU acceleration (torch required) -
- CUDA: +We have released pre-built wheels for various Python versions, platforms, and backends for convenient installation on our [index page](https://nexaai.github.io/nexa-sdk/whl/). - ``` - import torch - torch.cuda.is_available() - ``` +#### CPU - if True - - ``` - CMAKE_ARGS="-DGGML_CUDA=on -DSD_CUBLAS=ON" pip install nexaai - ``` - Or you prefer to install our pre-built wheel: - ```bash - pip install nexaai --index-url https://nexaai.github.io/nexa-sdk/whl/cu124 --extra-index-url https://pypi.org/simple - ``` - Optionally, you can install onnx supported version: - ```bash - pip install nexaai[onnx] --index-url https://nexaai.github.io/nexa-sdk/whl/cu124 --extra-index-url https://pypi.org/simple - ``` -
-
- Apple M Chip: - Apple icon -> about this mac -> Graphics - - if True: - - ``` - CMAKE_ARGS="-DGGML_METAL=on -DSD_METAL=ON" pip install nexaai - ``` - Or you prefer to install our pre-built wheel: - ```bash - pip install nexaai --index-url https://nexaai.github.io/nexa-sdk/whl/metal --extra-index-url https://pypi.org/simple - ``` - Optionally, you can install onnx supported version: - ```bash - pip install nexaai[onnx] --index-url https://nexaai.github.io/nexa-sdk/whl/metal --extra-index-url https://pypi.org/simple - ``` -
+```bash +pip install nexaai --index-url https://nexaai.github.io/nexa-sdk/whl/cpu --extra-index-url https://pypi.org/simple +``` -### CPU version +#### GPU (Metal) -
- Mac with Intel Chips +For the GPU version supporting **Metal (macOS)**: - To install the `nexaai` package on a Mac with Intel chips, use the following command: +```bash +pip install nexaai --index-url https://nexaai.github.io/nexa-sdk/whl/metal --extra-index-url https://pypi.org/simple +``` - ```bash - CMAKE_ARGS="-DCMAKE_CXX_FLAGS=-fopenmp" pip install nexaai - ``` +#### GPU (CUDA) - **Optional:** To install the version with ONNX support, use: +For the GPU version supporting **CUDA (Linux/Windows)**: - ```bash - CMAKE_ARGS="-DCMAKE_CXX_FLAGS=-fopenmp" pip install nexaai[onnx] - ``` +```bash +pip install nexaai --index-url https://nexaai.github.io/nexa-sdk/whl/cu124 --extra-index-url https://pypi.org/simple +``` -
+> [!NOTE] +> The CUDA wheels are built with CUDA 12.4, but should be compatible with all CUDA 12.X -
- Mac with M Chips or Other Operating Systems +### Install from source code distribution - To install the `nexaai` package on a Mac with M chips or other operating systems, use the following command: +If pre-built wheels cannot meet your requirements, you can install Nexa SDK from the source code via cmake. - ```bash - pip install nexaai - ``` +#### CPU - **Optional:** To install the version with ONNX support, use: +```bash +pip install nexaai +``` - ```bash - pip install nexaai[onnx] - ``` +> [!IMPORTANT] +> If you are using a Mac with Intel chips, run the following command: +> +> ```bash +> CMAKE_ARGS="-DCMAKE_CXX_FLAGS=-fopenmp" pip install nexaai +> ``` +#### GPU (Metal) -
-If you prefer to install the pre-built wheel for CPU versions: +For the GPU version supporting Metal (macOS): ```bash -pip install nexaai --index-url https://nexaai.github.io/nexa-sdk/whl/cpu --extra-index-url https://pypi.org/simple +CMAKE_ARGS="-DGGML_METAL=ON -DSD_METAL=ON" pip install nexaai ``` -To include ONNX support: +#### GPU (CUDA) + +For the GPU version supporting CUDA (Linux/Windows), run the following command: ```bash -pip install nexaai[onnx] --index-url https://nexaai.github.io/nexa-sdk/whl/cpu --extra-index-url https://pypi.org/simple +CMAKE_ARGS="-DGGML_CUDA=ON -DSD_CUBLAS=ON" pip install nexaai ``` +> [!TIP] +> You can accelerate the building process via parallel cmake by appending the following to the commands above: +> +> ```bash +> CMAKE_BUILD_PARALLEL_LEVEL=$(nproc) +> ``` +> +> For example: +> +> ```bash +> CMAKE_BUILD_PARALLEL_LEVEL=$(nproc) CMAKE_ARGS="-DGGML_METAL=ON -DSD_METAL +> ``` + +> [!TIP] +> For Windows users, we recommend running the installation command in Git Bash to avoid unexpected behavior. + ### Docker Usage + Note: Docker doesn't support GPU acceleration + ```bash docker pull nexa4ai/sdk:latest ``` + replace following placeholder with your path and command + ```bash docker run -v :/model -it nexa4ai/sdk:latest [nexa_command] [your_model_relative_path] ``` Example: + ```bash docker run -v /home/ubuntu/.cache/nexa/hub/official:/model -it nexa4ai/sdk:latest nexa gen-text /model/Phi-3-mini-128k-instruct/q4_0.gguf ``` will create an interactive session with text generation - ## Nexa CLI commands ## Model Commands ### NLP Models -| Model | Type | Format | Command | -| ---------------- | ---- | --------- | ------------------------------------ | +| Model | Type | Format | Command | +| ---------------- | ---- | --------- | -------------------------------- | | octopus-v2 | NLP | GGUF | `nexa gen-text octopus-v2` | | octopus-v4 | NLP | GGUF | `nexa gen-text octopus-v4` | | tinyllama | NLP | GGUF | `nexa gen-text tinyllama` | @@ -189,8 +175,8 @@ will create an interactive session with text generation ### Multimodal Models -| Model | Type | Format | Command | -| ---------------- | ---------- | ------ | ------------------------------- | +| Model | Type | Format | Command | +| ---------------- | ---------- | ------ | --------------------------- | | nanollava | Multimodal | GGUF | `nexa vlm nanollava` | | llava-phi3 | Multimodal | GGUF | `nexa vlm llava-phi3` | | llava-llama3 | Multimodal | GGUF | `nexa vlm llava-llama3` | @@ -199,8 +185,8 @@ will create an interactive session with text generation ### Computer Vision Models -| Model | Type | Format | Command | -| --------------------- | --------------- | --------- | ------------------------------------ | +| Model | Type | Format | Command | +| --------------------- | --------------- | --------- | -------------------------------- | | stable-diffusion-v1-4 | Computer Vision | GGUF | `nexa gen-image sd1-4` | | stable-diffusion-v1-5 | Computer Vision | GGUF/ONNX | `nexa gen-image sd1-5` | | lcm-dreamshaper | Computer Vision | GGUF/ONNX | `nexa gen-image lcm-dreamshaper` | \ No newline at end of file