A command-line tool for interacting with Azure OpenAI chat completion api.
$ npm install -g @cyyyu/ai
Create a resource and deploy a model using Azure OpenAI if you haven't done so already. You can follow this doc.
Once you have a resource and a model deployed, retrieve the ENDPOINT and API_KEY from Azure portal. Follow this instruction.
export OPENAI_API_KEY=<your api key>
export OPENAI_API_BASE=<your endpoint>
export OPENAI_API_MODEL_NAME=<your model name>
export AZURE_API_VERSION=<api version> // optional defaults to 2024-02-01
Then you can use the tool to interact with the AI assistant.
$ ai [options] [message]
Options:
-h, --help: Display a help message that explains how to use the tool.
-m, --message: Send a message to the AI assistant.
-i, --interactive: Start an interactive chat session with the AI assistant.
-p, --prompt: The prompt to use for the AI assistant. Default is "Assistant is a large language model trained by OpenAI.".
-u, --usage: Show usage statistics.
-v, --version: Display the version of the tool.
If you use the -i or --interactive option, the tool will start an interactive chat session. You can type messages to the AI assistant and it will respond to you.
Here are some examples of how to use the tool:
ai "How to find the biggest folder in a bash shell?"
ai -i
or with a message ai -i "Why is the ocean blue?"
- Act as a smart commit message generator:
alias aicommit="ai -p 'I want you to act as a commit message generator. I will provide you with information about the task and the prefix for the task code, and I would like you to generate an appropriate commit message using the conventional commit format. Do not write any explanations or other words, just reply with the commit message.'"
You can pipe to it.
- Act as a fancy title generator:
alias ai-fancy-title-generator="ai -p 'I want you to act as a fancy title generator. I will type keywords via comma and you will reply with fancy titles.'"
- Act as an english translator:
alias ai-english-translator="ai -p 'I want you to act as an English translator, spelling corrector and improver. I will speak to you in any language and you will detect the language, translate it and answer in the corrected and improved version of my text, in English. I want you to replace my simplified A0-level words and sentences with more beautiful and elegant, upper level English words and sentences. Keep the meaning same, but make them more literary. I want you to only reply the correction, the improvements and nothing else, do not write explanations.'"
- https://github.com/f/awesome-chatgpt-prompts
- https://github.com/PlexPt/awesome-chatgpt-prompts-zh(δΈζ)
MIT