No project description provided
Project description
Description
CodeMage is a tool that translates a source file written in one programming language into another language. The translation will be done by Large Language Model AI(such as ChatGPT)
Release 0.1
Features
1. Supported Languages: Javascript, Python, C++, Java
2. Default target Language is Python
3. Supported LLM model: openrouter, groq
4. Default LLM model is openrouter(sao10k/l3-euryale-70b)
Getting Started
1. Install Python : https://www.python.org/downloads/
2. Install Poetry
curl -sSL https://install.python-poetry.org | python3 -
OR if you have pipx
installed on your local machine, you can use the following commend
pipx install poetry
3. Clone the repository
git clone https://github.com/gitdevjin/code-mage.git
cd code_mage
4. Install Poetry Package
poetry install
5. Create your API_KEY at openrouter Or Groq
It's free with sign-up. You can easily sign-up with your google account
6. Create .env
file in the root directory and save the following:
OPENROUTER_API_KEY=your_open_router_api_key
GROQ_API_KEY=your_groq_api_key
Now you are ready to use the tool!
Usage
poetry run codemage <source_file>
Examples
You can try the tool with the included example files as followings:
poetry run codemage ./example/test.js -l python
You can also use the tool with multiple files:
poetry run codemage ./example/test.js ./example/sample.js -l java
You can select model with -m, --model <model_name>
option:
poetry run codemage ./example/test.js -m groq -o result -t
You can stream out the result onto stdout
with -s, --stream
flag:
poetry run codemage ./example/test.js -s
Using TOML files
If you wish, you can specify all of your options in a TOML formatted configuration.
- Start by creating a
.codemage-config.toml
in your home directory.
mkdir ~/.codemage-config.toml
- Add the following information to the file:
model="groq" # if you wish to use OPEN ROUTER you can just delete this line
GROQ_API_KEY="<YOUR-GROQ-API-KEY>"
OPENROUTER_API_KEY="<YOUR-OPEN-ROUTER-API-KEY>"
language="java" # you can use any of the supported languages
stream=false/true
token_usage=false/true
output="result" # type any name for the output file without the extension
- Run the command
poetry run codemage ./example/test.js
Options
-h, --help : display help message and exit
-l, --language : choose your target language (currently python, java, c++, and javascript are supported)
-o, --output : enter your output file name without extension
-m, --model : select LLM API model (currently openrouter, and groq are supported)
-v, --version : Show program's version number and exit
-t, --token-usage : Get information about token usage for the prompt and response
-s, --stream : Stream out the output into stdout
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
Built Distribution
File details
Details for the file code_mage-0.9.0.tar.gz
.
File metadata
- Download URL: code_mage-0.9.0.tar.gz
- Upload date:
- Size: 5.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.1 Darwin/23.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 449e715a9ffea1cfab6ea70acd71edbec6af84055160319e2193f39c11cf86d1 |
|
MD5 | 800d3c28fc731b29d8ff391ca464ce65 |
|
BLAKE2b-256 | 4074741bfcb9066558773624d727daf741ac24666cc9b0dfbda6b619f47a5b75 |
File details
Details for the file code_mage-0.9.0-py3-none-any.whl
.
File metadata
- Download URL: code_mage-0.9.0-py3-none-any.whl
- Upload date:
- Size: 7.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.8.3 CPython/3.12.1 Darwin/23.6.0
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b6455323133050bc6caea9239a4e13de7ec322f334ab4ecb6f1c7161b016dc89 |
|
MD5 | c05d2913481642d9a1a76bcb9386ef64 |
|
BLAKE2b-256 | 1d24120fdf2d5736ef5eecb3c6329223fb5bee97eac2fa3557907aa8b034b581 |