Skip to main content

Extremely lightweight and purpose-built feature extraction and retrieval engine (FERE).

Project description

FERElight | ˈferēlīt |

pypi

Extremely lightweight and purpose-built feature extraction and retrieval engine (FERE).

Installation

From PyPI

pip install ferelight

From Source

pip install git+https://github.com/FEREorg/ferelight.git

Usage

To configure the pgvector PostgreSQL connection and CORS settings, create a file config.json in the root directory with the following content:

{
  "DBHOST": "<host>",
  "DBPORT": "<port>",
  "DBUSER": "<user>",
  "DBPASSWORD": "<password>",
  "CORS": {
    "ENABLED": true,
    "ALLOW_ORIGIN": "*",
    "ALLOW_METHODS": "GET, POST, OPTIONS",
    "ALLOW_HEADERS": "Content-Type, Authorization"
  }
}

CORS Configuration Parameters

  • ENABLED: Boolean value to enable or disable CORS support (default: false)
  • ALLOW_ORIGIN: Specifies which origins are allowed to access the resource (default: "*")
  • ALLOW_METHODS: Specifies which HTTP methods are allowed (default: "GET, POST, OPTIONS")
  • ALLOW_HEADERS: Specifies which HTTP headers are allowed (default: "Content-Type, Authorization")

Running the Server

To run the server, please execute the following from the root directory:

pip3 install -r requirements.txt
python3 -m ferelight

You can also specify a custom path to the configuration file:

python3 -m ferelight --config /path/to/your/config.json
# or using the short option
python3 -m ferelight -c /path/to/your/config.json

Running with Docker

Using Docker Hub

The Docker image is available on Docker Hub. You can pull and run it directly:

docker pull florianspiess/ferelight:latest
docker run -p 8080:8080 florianspiess/ferelight:latest

Building Locally

To build and run the server on a Docker container locally, execute the following from the root directory:

# building the image
docker build -t ferelight .

# starting up a container
docker run -p 8080:8080 ferelight

Development

Releasing New Versions

To release a new version:

  1. Update the version number in ferelight/__init__.py
  2. Create a new GitHub release or tag with a version number (e.g., v1.0.1)
  3. The GitHub Actions workflows will automatically:
    • Build and publish the package to PyPI
    • Build and publish the Docker image to Docker Hub (as both latest and version-specific tags)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ferelight-1.2.0.tar.gz (15.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ferelight-1.2.0-py3-none-any.whl (22.7 kB view details)

Uploaded Python 3

File details

Details for the file ferelight-1.2.0.tar.gz.

File metadata

  • Download URL: ferelight-1.2.0.tar.gz
  • Upload date:
  • Size: 15.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for ferelight-1.2.0.tar.gz
Algorithm Hash digest
SHA256 99f498343c6f07a47cf4e3bb41a1af7f483aa108b3b5966da1936b29f5eb663f
MD5 3b2caa860323f1281e05f4611c6bc5bc
BLAKE2b-256 6976e34373670d7b17f7bcd0c1cd45ad823c2e6d4fff72dd0ec3e52492925217

See more details on using hashes here.

Provenance

The following attestation bundles were made for ferelight-1.2.0.tar.gz:

Publisher: publish.yml on FEREorg/ferelight

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ferelight-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: ferelight-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 22.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for ferelight-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ca55e21e73cf63f14eb4894b34123647eab0469a2f36f539471df60f1cd27931
MD5 e0939b21cbe9755d2a03a3ad27f89f6a
BLAKE2b-256 174227790d7c40478ac1713aac051868756996de35cde6c0668d77038f88f578

See more details on using hashes here.

Provenance

The following attestation bundles were made for ferelight-1.2.0-py3-none-any.whl:

Publisher: publish.yml on FEREorg/ferelight

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page