https://github.com/argilla-io/argilla-server

A Python native FastAPI server for the Argilla backend.

https://github.com/argilla-io/argilla-server

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (13.9%) to scientific vocabulary

Keywords

api argilla fastapi llm machine-learning nlp server
Last synced: 5 months ago · JSON representation ·

Repository

A Python native FastAPI server for the Argilla backend.

Basic Info
Statistics
  • Stars: 9
  • Watchers: 5
  • Forks: 9
  • Open Issues: 2
  • Releases: 11
Archived
Topics
api argilla fastapi llm machine-learning nlp server
Created about 2 years ago · Last pushed over 1 year ago
Metadata Files
Readme Changelog Contributing License Code of conduct Citation

README.md

[!IMPORTANT] This repository has been archived and is no longer maintained. If you are looking for the latest version of the Argilla server, please visit the Argilla mono repo, code for Argilla server is located at argilla-server folder.

Argilla
Argilla-Server

The repository for the Python native FastAPI server for Argilla backend.

CI Codecov CI

Argilla is a collaboration platform for AI engineers and domain experts that require high-quality outputs, full data ownership, and overall efficiency.

This repository only contains developer info about the backend server. If you want to get started, we recommend taking a look at our main repository or our documentation.

Are you a contributor or do you want to understand what is going on under the hood, please keep reading the documentation below.

Clone repository

argilla-server is using argilla repository as submodule to build frontend statics so when cloning use the following command:

sh git clone --recurse-submodules git@github.com:argilla-io/argilla-server.git

If you already cloned the repository without using --recurse-submodules you can init and update the submodules with:

sh git submodule update --remote --recursive --init

[!IMPORTANT] By default argilla submodule is using develop branch so the previous command will get the latest commit from that branch.

Specify a tag for argilla submodule

When doing a release we should change argilla submodule to use an specific tag. In the following example we are setting tag v1.22.0:

sh cd argilla git fetch --tags git checkout v1.22.0

[!NOTE] You should see some changes on the argilla-server root folder where the subproject commit is now changed to the one from the tag version. Feel free to commit these changes.

Development environment

By default all commands executed with pdm run will get environment variables from .env.dev except command pdm test that will overwrite some of them using values coming from .env.test file.

These environment variables can be overrided if necessary so feel free to defined your own ones locally.

Run cli

sh pdm cli

Run database migrations

By default a SQLite located at ~/.argilla/argilla.db will be used. You can create the database and run migrations with the following custom PDM command:

sh pdm migrate

Run tests

A SQLite database located at ~/.argilla/argilla-test.db will be automatically created to run tests. You can run the entire test suite using the following custom PDM command:

sh pdm test

Run development server

Build frontend static files

Before running Argilla development server we need to build the frontend static files. Node version 18 is required for this action:

sh brew install node@18

After that you can build the frontend static files:

sh ./scripts/build_frontend.sh

After running the previous script you should have a folder at src/argilla_server/static with all the frontend static files successfully generated.

Run uvicorn development server

sh pdm server

Owner

  • Name: Argilla
  • Login: argilla-io
  • Kind: organization
  • Email: contact@argilla.io

Building the open-source tool for data-centric NLP

Citation (CITATION.cff)

cff-version: 1.2.0
message: "If you use this software, please cite it as below."
authors:
- family-names: "Daniel"
  given-names: "Vila-Suero"
- family-names: "Francisco"
  given-names: "Aranda"
title: "Argilla - Open-source framework for data-centric NLP"
version: 1.2.0
date-released: 2023-01-12
url: "https://github.com/argilla-io/argilla"

GitHub Events

Total
Last Year

Issues and Pull Requests

Last synced: over 1 year ago

All Time
  • Total issues: 55
  • Total pull requests: 126
  • Average time to close issues: 18 days
  • Average time to close pull requests: 4 days
  • Total issue authors: 2
  • Total pull request authors: 3
  • Average comments per issue: 0.27
  • Average comments per pull request: 0.36
  • Merged pull requests: 115
  • Bot issues: 0
  • Bot pull requests: 14
Past Year
  • Issues: 55
  • Pull requests: 126
  • Average time to close issues: 18 days
  • Average time to close pull requests: 4 days
  • Issue authors: 2
  • Pull request authors: 3
  • Average comments per issue: 0.27
  • Average comments per pull request: 0.36
  • Merged pull requests: 115
  • Bot issues: 0
  • Bot pull requests: 14
Top Authors
Issue Authors
  • jfcalvo (32)
  • frascuchon (15)
  • harshiiash (1)
  • davidberenstein1957 (1)
Pull Request Authors
  • jfcalvo (88)
  • frascuchon (66)
  • pre-commit-ci[bot] (20)
  • davidberenstein1957 (1)
  • gabrielmbmb (1)
Top Labels
Issue Labels
status: stale (4)
Pull Request Labels

Dependencies

.github/actions/docker-image-tag-from-ref/action.yml actions
  • Dockerfile * docker
.github/workflows/build-push-docker.yml actions
  • ./.github/actions/docker-image-tag-from-ref * composite
  • actions/checkout v3 composite
  • actions/download-artifact v3 composite
  • docker/build-push-action v4 composite
  • docker/login-action v2 composite
  • docker/setup-buildx-action v2 composite
  • docker/setup-qemu-action v2 composite
  • peter-evans/dockerhub-description v3 composite
.github/workflows/build-python-package.yml actions
  • actions/checkout v3 composite
  • actions/setup-node v3 composite
  • actions/upload-artifact v3 composite
  • pdm-project/setup-pdm v4 composite
.github/workflows/check-repo-files.yml actions
  • actions/checkout v3 composite
  • dorny/paths-filter v2 composite
.github/workflows/close-inactive-issues-bot.yml actions
  • actions/stale v5 composite
.github/workflows/dependency-review.yml actions
  • actions/checkout v3 composite
  • actions/dependency-review-action v4 composite
.github/workflows/package.yml actions
  • actions/checkout v3 composite
  • actions/download-artifact v3 composite
  • actions/download-artifact v2 composite
  • codecov/codecov-action v2 composite
  • pdm-project/setup-pdm v4 composite
.github/workflows/run-python-tests.yml actions
  • actions/checkout v3 composite
  • actions/upload-artifact v3 composite
  • pdm-project/setup-pdm v4 composite
  • ${{inputs.searchEngineDockerImage}} * docker
.github/actions/docker-image-tag-from-ref/Dockerfile docker
  • python 3.10 build
docker/quickstart/Dockerfile docker
  • argilla/argilla-server ${ARGILLA_VERSION} build
docker/server/Dockerfile docker
  • python 3.10.12-slim build
docker/quickstart/requirements.txt pypi
  • argilla *
  • datasets *
pyproject.toml pypi
  • PyYAML >= 5.4.1,< 6.1.0
  • SQLAlchemy ~= 2.0.0
  • aiofiles >= 0.6,< 22.2
  • aiosqlite >=0.19.0
  • alembic ~= 1.9.0
  • brotli-asgi >= 1.1,< 1.3
  • elasticsearch8 [async] ~= 8.7.0
  • fastapi >= 0.103.1,< 1.0.0
  • greenlet >= 2.0.0
  • opensearch-py ~= 2.0.0
  • packaging >=23.2
  • passlib [bcrypt] ~= 1.7.4
  • psutil >= 5.8, <5.10
  • pydantic >= 1.10.7,< 2.0
  • python-jose [cryptography] >= 3.2,< 3.4
  • python-multipart ~= 0.0.5
  • rich != 13.1.0
  • scikit-learn >= 0.24.2
  • segment-analytics-python == 2.2.0
  • smart-open *
  • typer >= 0.6.0, < 0.10.0
  • uvicorn [standard] >= 0.15.0,< 0.25.0