Skip to main content

A transcoding library using LLMs.

Project description

Pages Publish Code Style: black Python versions Package version

Overview

Janus (janus-llm) uses LLMs to aid in the modernization of legacy IT systems. The repository can currently do the following:

  1. Chunk code of over 100 programming languages to fit within different model context windows and add to a Chroma vector database.
  2. Translate from one programming language to another on a file-by-file basis using an LLM with varying results (with the translate.py script).
  3. Translate from a binary file to a programming language using Ghidra decompilation.
  4. Do 1-3 with a CLI tool (janus).

Roadmap

Priorities

  1. Scripts interacting with Chroma Vector DB for RAG translation and understanding.
  2. Evaluation of outputs in CLI using LLM self-evaluation or static analysis.

Installation

pip install janus-llm

Installing from Source

Clone the repository:

git clone git@github.com:janus-llm/janus-llm.git

NOTE: Make sure you're using Python 3.10 or 3.11.

Then, install the requirements:

curl -sSkL https://install.python-poetry.org | python -
export PATH=$PATH:$HOME/.local/bin
poetry install

Contributing

See our contributing pages

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

janus_llm-1.0.0.tar.gz (48.6 kB view hashes)

Uploaded Source

Built Distribution

janus_llm-1.0.0-py3-none-any.whl (61.0 kB view hashes)

Uploaded Python 3

Supported by

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