A transcoding library using LLMs.
Project description
Overview
Janus (janus-llm
) uses LLMs to aid in the modernization of legacy IT systems. The repository can currently do the following:
- Chunk code of over 100 programming languages to fit within different model context windows and add to a Chroma vector database.
- Translate from one programming language to another on a file-by-file basis using an LLM with varying results (with the
translate.py
script). - Translate from a binary file to a programming language using Ghidra decompilation.
- Do 1-3 with a CLI tool (
janus
).
Roadmap
Priorities
- Scripts interacting with Chroma Vector DB for RAG translation and understanding.
- 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
Copyright
Copyright ©2024 The MITRE Corporation. ALL RIGHTS RESERVED. Approved for Public Release; Distribution Unlimited. Public Release Case Number 23-4084.
Project details
Release history Release notifications | RSS feed
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-4.2.0.tar.gz
(89.4 kB
view details)
Built Distribution
janus_llm-4.2.0-py3-none-any.whl
(122.3 kB
view details)
File details
Details for the file janus_llm-4.2.0.tar.gz
.
File metadata
- Download URL: janus_llm-4.2.0.tar.gz
- Upload date:
- Size: 89.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.11.10 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4c5facf7306f36376add8e389d92d1ea29802211d231b6ceb1a52ef511cd7b39 |
|
MD5 | 4f44df8866bbf93b6f1335268b759d50 |
|
BLAKE2b-256 | 3522f66f0ee002ad50d59d970478b871d1ee9d27ffb99822b80c1e2df4ea7607 |
File details
Details for the file janus_llm-4.2.0-py3-none-any.whl
.
File metadata
- Download URL: janus_llm-4.2.0-py3-none-any.whl
- Upload date:
- Size: 122.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.4 CPython/3.11.10 Linux/6.5.0-1025-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 75ec9aed57e6800703ea456a9ac9c36c6c1e53fb67fef5f2ee081dc3f9b24816 |
|
MD5 | 75f9bdc3da6ded3217b78c4c865d45e6 |
|
BLAKE2b-256 | 616a2b3bf57e396f44243fa4de0c1364172e1ae38f52eac805c32209ef113d04 |