Bugfix/increase tokens (#132)
* feat(api.ts): add support for OPENAI_MAX_TOKENS environment variable feat(config.ts): add OPENAI_MAX_TOKENS to CONFIG_KEYS and configValidators * 2.0.2 * 2.0.3 * docs(README.md): add GPT-4 usage instructions and mention the cost difference compared to GPT-3.5-turbo --------- Co-authored-by: di-sukharev <dim.sukharev@gmail.com>
This commit is contained in:
committed by
GitHub
parent
42c26cbaaa
commit
3f5df6ef7c
@@ -54,6 +54,18 @@ oc
|
|||||||
|
|
||||||
## Features
|
## Features
|
||||||
|
|
||||||
|
### Switch to GPT-4
|
||||||
|
|
||||||
|
By default OpenCommit uses GPT-3.5-turbo (ChatGPT).
|
||||||
|
|
||||||
|
You may switch to GPT-4 which performs better, but costs ~x15 times more 🤠
|
||||||
|
|
||||||
|
```sh
|
||||||
|
oc config set model=gpt-4
|
||||||
|
```
|
||||||
|
|
||||||
|
Make sure you do lowercase `gpt-4`.
|
||||||
|
|
||||||
### Preface commits with emoji 🤠
|
### Preface commits with emoji 🤠
|
||||||
|
|
||||||
[GitMoji](https://gitmoji.dev/) convention is used.
|
[GitMoji](https://gitmoji.dev/) convention is used.
|
||||||
|
|||||||
Generated
+3
-2
@@ -1,12 +1,12 @@
|
|||||||
{
|
{
|
||||||
"name": "opencommit",
|
"name": "opencommit",
|
||||||
"version": "2.0.1",
|
"version": "2.0.0",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "opencommit",
|
"name": "opencommit",
|
||||||
"version": "2.0.1",
|
"version": "2.0.0",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@clack/prompts": "^0.6.1",
|
"@clack/prompts": "^0.6.1",
|
||||||
@@ -22,6 +22,7 @@
|
|||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"oc": "out/cli.cjs",
|
"oc": "out/cli.cjs",
|
||||||
|
"oco": "out/cli.cjs",
|
||||||
"opencommit": "out/cli.cjs"
|
"opencommit": "out/cli.cjs"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
|||||||
+1
-1
@@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "opencommit",
|
"name": "opencommit",
|
||||||
"version": "2.0.1",
|
"version": "2.0.3",
|
||||||
"description": "GPT CLI to auto-generate impressive commits in 1 second. Killing lame commits with AI 🤯🔫",
|
"description": "GPT CLI to auto-generate impressive commits in 1 second. Killing lame commits with AI 🤯🔫",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"git",
|
"git",
|
||||||
|
|||||||
+2
-1
@@ -13,6 +13,7 @@ const config = getConfig();
|
|||||||
|
|
||||||
let apiKey = config?.OPENAI_API_KEY;
|
let apiKey = config?.OPENAI_API_KEY;
|
||||||
let basePath = config?.OPENAI_BASE_PATH;
|
let basePath = config?.OPENAI_BASE_PATH;
|
||||||
|
let maxTokens = config?.OPENAI_MAX_TOKENS;
|
||||||
|
|
||||||
const [command, mode] = process.argv.slice(2);
|
const [command, mode] = process.argv.slice(2);
|
||||||
|
|
||||||
@@ -53,7 +54,7 @@ class OpenAi {
|
|||||||
messages,
|
messages,
|
||||||
temperature: 0,
|
temperature: 0,
|
||||||
top_p: 0.1,
|
top_p: 0.1,
|
||||||
max_tokens: 196
|
max_tokens: maxTokens ?? 196
|
||||||
});
|
});
|
||||||
|
|
||||||
const message = data.choices[0].message;
|
const message = data.choices[0].message;
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ import { getI18nLocal } from '../i18n';
|
|||||||
|
|
||||||
export enum CONFIG_KEYS {
|
export enum CONFIG_KEYS {
|
||||||
OPENAI_API_KEY = 'OPENAI_API_KEY',
|
OPENAI_API_KEY = 'OPENAI_API_KEY',
|
||||||
|
OPENAI_MAX_TOKENS = 'OPENAI_MAX_TOKENS',
|
||||||
OPENAI_BASE_PATH = 'OPENAI_BASE_PATH',
|
OPENAI_BASE_PATH = 'OPENAI_BASE_PATH',
|
||||||
description = 'description',
|
description = 'description',
|
||||||
emoji = 'emoji',
|
emoji = 'emoji',
|
||||||
@@ -63,6 +64,16 @@ export const configValidators = {
|
|||||||
return value;
|
return value;
|
||||||
},
|
},
|
||||||
|
|
||||||
|
[CONFIG_KEYS.OPENAI_MAX_TOKENS](value: any) {
|
||||||
|
validateConfig(
|
||||||
|
CONFIG_KEYS.OPENAI_MAX_TOKENS,
|
||||||
|
typeof value === 'number',
|
||||||
|
'Must be a number'
|
||||||
|
);
|
||||||
|
|
||||||
|
return value;
|
||||||
|
},
|
||||||
|
|
||||||
[CONFIG_KEYS.emoji](value: any) {
|
[CONFIG_KEYS.emoji](value: any) {
|
||||||
validateConfig(
|
validateConfig(
|
||||||
CONFIG_KEYS.emoji,
|
CONFIG_KEYS.emoji,
|
||||||
|
|||||||
Reference in New Issue
Block a user