openai-free
v1.0.1
Published
Free OpenAI-compatible API client by JrDev06 - no API keys needed
Maintainers
Readme
openai-free 🤖
A free OpenAI-compatible API client that doesn't require API keys.
Installation
npm install openai-freeBasic Usage
const OpenAI = require('openai-free');
const openai = new OpenAI();
async function chat() {
try {
const response = await openai.chat.completions.create({
messages: [
{ role: 'user', content: 'Hello!' }
]
});
console.log(response.choices[0].message.content);
} catch (error) {
console.error('Error:', error.message);
}
}
chat();API Methods
Chat Completion
const response = await openai.chat.completions.create({
messages: [
{ role: 'user', content: 'What is JavaScript?' }
]
});List Models
const models = await openai.models.list();
console.log(models.data);Get Model Info
const modelInfo = await openai.models.retrieve('gpt-4o');
console.log(modelInfo);Available Models
gpt-4o(default)gpt-4o-mini
Parameters
| Parameter | Type | Default | Description |
|-----------|------|---------|-------------|
| messages | Array | [] | Array of message objects |
| model | String | 'gpt-4o' | Model ID |
| temperature | Number | 0.5 | Response randomness (0-1) |
| max_tokens | Number | 4000 | Maximum response length |
| top_p | Number | 1 | Nucleus sampling (0-1) |
| frequency_penalty | Number | 0 | Repetition reduction (0-2) |
| presence_penalty | Number | 0 | Topic control (0-2) |
| stream | Boolean | false | Stream response |
Custom Configuration
const openai = new OpenAI({
baseURL: 'your-custom-url' // Optional: Override default API endpoint
});Error Handling
try {
const response = await openai.chat.completions.create({
messages: [{ role: 'user', content: 'Hello!' }]
});
} catch (error) {
console.error('Error:', error.message);
}🐛 Bug Reports
Found a bug? Please open an issue with:
- Bug description
- Steps to reproduce
- Expected vs actual behavior
📝 License
MIT © Jr Busaco (JrDev06)
👨💻 Author
Jr Busaco (JrDev06)
- Facebook: @jr.busaco.271915
💡 Need help? Feel free to reach out on Facebook or open an issue.
