Name | git-llm JSON |
Version |
0.1.3
JSON |
| download |
home_page | |
Summary | The project integrates Git with a llm (OpenAI, LlamaCpp, and GPT-4-All) to extend the capabilities of git. |
upload_time | 2023-05-30 23:29:11 |
maintainer | |
docs_url | None |
author | Saryev Rustam |
requires_python | >=3.9,<4.0 |
license | |
keywords |
chatgpt
openai
cli
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
## git-llm
The project integrates Git with a llm (OpenAI, LlamaCpp, and GPT-4-All) to extend the capabilities of git. It supports
offline processing using [GPT4All](https://github.com/nomic-ai/gpt4all) without sharing your code with third parties, or
you can use OpenAI if privacy is not a concern for you. It is only recommended for educational purposes and not for
production use.
### Installation
To install `git-llm`, you need to have Python 3.9 and an OpenAI API
key [api-keys](https://platform.openai.com/account/api-keys). Additionally, if you want to use the GPT4All model, you
need to download the [ggml-gpt4all-j-v1.3-groovy.bin](https://gpt4all.io/models/ggml-gpt4all-j-v1.3-groovy.bin) model.
If you prefer a different model, you can download it from [GPT4All](https://gpt4all.io) and configure path to it in the
configuration and specify its path in the configuration. If you want some files to be ignored, add them to .gitignore.
To install `git-llm`, run the following command in your terminal:
```bash
pip install git-llm
```
### Usage
To use `git-llm`, you need to configure it first. To do this, run the following command:
```bash
git-llm config
```
`changelog` - generates a list of changes from output `git diff --staged`
```bash
git-llm changelog
```
This command reviews the changes staged for commit using `git diff --staged` and writes a commit message following the
Conventional format.
```bash
git-llm commit
```
You can also edit the configuration manually by editing the `~/.git_llm_config.yaml` file. If for some reason you cannot
find the configuration file, just run the tool and at the very beginning it will output the path to the configuration
file.
```yaml
# The OpenAI API key. You can get it from https://beta.openai.com/account/api-keys
api_key: sk-xxx
# maximum size of a chunk of text to be sent to the model
chunk_size: 500
# the maximum tokens
max_tokens: 1048
# model name for the OpenAI API
model_name: gpt-3.5-turbo
# model path for the local model
model_path: models/ggml-gpt4all-j-v1.3-groovy.bin
# model type: openai or local
model_type: openai
```
### Features
More commands will be added in the future.
### Contributing
Contributions are always welcome!
Raw data
{
"_id": null,
"home_page": "",
"name": "git-llm",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.9,<4.0",
"maintainer_email": "",
"keywords": "chatgpt,openai,cli",
"author": "Saryev Rustam",
"author_email": "rsaryev1997@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/be/db/f3c41bfc7b0c5204b0fb17afd7e671c531008ccf74fd535ad2a9aca22269/git_llm-0.1.3.tar.gz",
"platform": null,
"description": "## git-llm\n\nThe project integrates Git with a llm (OpenAI, LlamaCpp, and GPT-4-All) to extend the capabilities of git. It supports\noffline processing using [GPT4All](https://github.com/nomic-ai/gpt4all) without sharing your code with third parties, or\nyou can use OpenAI if privacy is not a concern for you. It is only recommended for educational purposes and not for\nproduction use.\n\n### Installation\n\nTo install `git-llm`, you need to have Python 3.9 and an OpenAI API\nkey [api-keys](https://platform.openai.com/account/api-keys). Additionally, if you want to use the GPT4All model, you\nneed to download the [ggml-gpt4all-j-v1.3-groovy.bin](https://gpt4all.io/models/ggml-gpt4all-j-v1.3-groovy.bin) model.\nIf you prefer a different model, you can download it from [GPT4All](https://gpt4all.io) and configure path to it in the\nconfiguration and specify its path in the configuration. If you want some files to be ignored, add them to .gitignore.\n\nTo install `git-llm`, run the following command in your terminal:\n\n```bash\npip install git-llm\n```\n\n### Usage\n\nTo use `git-llm`, you need to configure it first. To do this, run the following command:\n\n```bash\ngit-llm config\n```\n\n`changelog` - generates a list of changes from output `git diff --staged`\n\n```bash\ngit-llm changelog\n```\n\nThis command reviews the changes staged for commit using `git diff --staged` and writes a commit message following the\nConventional format.\n\n```bash\ngit-llm commit\n```\n\nYou can also edit the configuration manually by editing the `~/.git_llm_config.yaml` file. If for some reason you cannot\nfind the configuration file, just run the tool and at the very beginning it will output the path to the configuration\nfile.\n\n```yaml\n# The OpenAI API key. You can get it from https://beta.openai.com/account/api-keys\napi_key: sk-xxx\n# maximum size of a chunk of text to be sent to the model\nchunk_size: 500\n# the maximum tokens\nmax_tokens: 1048\n# model name for the OpenAI API\nmodel_name: gpt-3.5-turbo\n# model path for the local model\nmodel_path: models/ggml-gpt4all-j-v1.3-groovy.bin\n# model type: openai or local\nmodel_type: openai\n```\n\n### Features\n\nMore commands will be added in the future.\n\n### Contributing\n\nContributions are always welcome!\n",
"bugtrack_url": null,
"license": "",
"summary": "The project integrates Git with a llm (OpenAI, LlamaCpp, and GPT-4-All) to extend the capabilities of git.",
"version": "0.1.3",
"project_urls": null,
"split_keywords": [
"chatgpt",
"openai",
"cli"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e0483a7671192af7f911aa2f55b866767c248f561d5a1e21e80ce647997be328",
"md5": "e634a70ffd3b493bb1707903510e121f",
"sha256": "c4af0ffdc138dd7d9ea9772a86429162d771d0091d262b37541ae540d1e7e9b0"
},
"downloads": -1,
"filename": "git_llm-0.1.3-py3-none-any.whl",
"has_sig": false,
"md5_digest": "e634a70ffd3b493bb1707903510e121f",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9,<4.0",
"size": 10401,
"upload_time": "2023-05-30T23:29:09",
"upload_time_iso_8601": "2023-05-30T23:29:09.915126Z",
"url": "https://files.pythonhosted.org/packages/e0/48/3a7671192af7f911aa2f55b866767c248f561d5a1e21e80ce647997be328/git_llm-0.1.3-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "bedbf3c41bfc7b0c5204b0fb17afd7e671c531008ccf74fd535ad2a9aca22269",
"md5": "8f583d1f1f0e3abbe1e2ac19cff7a78d",
"sha256": "6e8207eded70fe5be3cb1e99e8c5f2b4e4382114c69c5a375a30b00c7e9e37e3"
},
"downloads": -1,
"filename": "git_llm-0.1.3.tar.gz",
"has_sig": false,
"md5_digest": "8f583d1f1f0e3abbe1e2ac19cff7a78d",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9,<4.0",
"size": 8568,
"upload_time": "2023-05-30T23:29:11",
"upload_time_iso_8601": "2023-05-30T23:29:11.596640Z",
"url": "https://files.pythonhosted.org/packages/be/db/f3c41bfc7b0c5204b0fb17afd7e671c531008ccf74fd535ad2a9aca22269/git_llm-0.1.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-05-30 23:29:11",
"github": false,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"lcname": "git-llm"
}