Spaces:
Configuration error
Configuration error
| # Contributing to LocalAI | |
| Thank you for your interest in contributing to LocalAI! We appreciate your time and effort in helping to improve our project. Before you get started, please take a moment to review these guidelines. | |
| ## Table of Contents | |
| - [Getting Started](#getting-started) | |
| - [Prerequisites](#prerequisites) | |
| - [Setting up the Development Environment](#setting-up-the-development-environment) | |
| - [Contributing](#contributing) | |
| - [Submitting an Issue](#submitting-an-issue) | |
| - [Creating a Pull Request (PR)](#creating-a-pull-request-pr) | |
| - [Coding Guidelines](#coding-guidelines) | |
| - [Testing](#testing) | |
| - [Documentation](#documentation) | |
| - [Community and Communication](#community-and-communication) | |
| ## Getting Started | |
| ### Prerequisites | |
| - Golang [1.21] | |
| - Git | |
| - macOS/Linux | |
| ### Setting up the Development Environment and running localAI in the local environment | |
| 1. Clone the repository: `git clone https://github.com/go-skynet/LocalAI.git` | |
| 2. Navigate to the project directory: `cd LocalAI` | |
| 3. Install the required dependencies ( see https://localai.io/basics/build/#build-localai-locally ) | |
| 4. Build LocalAI: `make build` | |
| 5. Run LocalAI: `./local-ai` | |
| ## Contributing | |
| We welcome contributions from everyone! To get started, follow these steps: | |
| ### Submitting an Issue | |
| If you find a bug, have a feature request, or encounter any issues, please check the [issue tracker](https://github.com/go-skynet/LocalAI/issues) to see if a similar issue has already been reported. If not, feel free to [create a new issue](https://github.com/go-skynet/LocalAI/issues/new) and provide as much detail as possible. | |
| ### Creating a Pull Request (PR) | |
| 1. Fork the repository. | |
| 2. Create a new branch with a descriptive name: `git checkout -b [branch name]` | |
| 3. Make your changes and commit them. | |
| 4. Push the changes to your fork: `git push origin [branch name]` | |
| 5. Create a new pull request from your branch to the main project's `main` or `master` branch. | |
| 6. Provide a clear description of your changes in the pull request. | |
| 7. Make any requested changes during the review process. | |
| 8. Once your PR is approved, it will be merged into the main project. | |
| ## Coding Guidelines | |
| - No specific coding guidelines at the moment. Please make sure the code can be tested. The most popular lint tools like [`golangci-lint`](https://golangci-lint.run) can help you here. | |
| ## Testing | |
| `make test` cannot handle all the model now. Please be sure to add a test case for the new features or the part was changed. | |
| ### Running AIO tests | |
| All-In-One images has a set of tests that automatically verifies that most of the endpoints works correctly, a flow can be : | |
| ```bash | |
| # Build the LocalAI docker image | |
| make DOCKER_IMAGE=local-ai docker | |
| # Build the corresponding AIO image | |
| BASE_IMAGE=local-ai DOCKER_AIO_IMAGE=local-ai-aio:test make docker-aio | |
| # Run the AIO e2e tests | |
| LOCALAI_IMAGE_TAG=test LOCALAI_IMAGE=local-ai-aio make run-e2e-aio | |
| ``` | |
| ## Documentation | |
| We are welcome the contribution of the documents, please open new PR or create a new issue. The documentation is available under `docs/` https://github.com/mudler/LocalAI/tree/master/docs | |
| ## Community and Communication | |
| - You can reach out via the Github issue tracker. | |
| - Open a new discussion at [Discussion](https://github.com/go-skynet/LocalAI/discussions) | |
| - Join the Discord channel [Discord](https://discord.gg/uJAeKSAGDy) | |