This library provides convenient access to the OpenAI Node API Library from Node-RED.
Node-RED OpenAI API is a versatile and configurable Node-RED node designed for seamless integration with any OpenAI API compatible platform. This node empowers innovators and developers to effortlessly connect and orchestrate complex AI and IoT workflows, leveraging Node-RED's sophisticated ecosystem. Ideal for enhancing IoT operations with advanced AI capabilities, this node serves as your gateway to applying the latest AI technology in an IoT context, facilitating innovative applications across diverse environments.
@inductiv/node-red-openai-api
cd $HOME/.node-red # or the location of your Node-RED configuration directory.
npm i @inductiv/node-red-openai-api
After installation, find your node in the AI palette category labeled "OpenAI API". Here's how you can start integrating AI into your IoT projects:
- Configure the node with your AI platform's API key (if required).
- Send OpenAI documented API service configuration paramaters to the node using the default
msg.payload
property, or confiure your desired incoming object property reference on the node itself. - Explore the examples directory for sample implementations.
- Seamless Integration: Connect directly with OpenAI API compatible services without the hassle of complex coding or setup. Ideal for rapid prototyping and deployment in IoT contexts.
- Configurable and Flexible: Adapt to a wide range of project requirements, making it easy to integrate AI into your IoT solutions.
- Powerful Combinations: Utilize Node-RED's diverse nodes to build complex, AI-driven IoT workflows with ease.
- Chores: Cleaned up node JavaScript to improve stability and performance.
Version 1.0 of the node-red-openai-api node brings significant enhancements and new possibilities, including:
- API Upgrade to OpenAI Assistants v2: Transition to the new Assistants v2 API version with extended features. This upgrade leverages the updated OpenAI NodeJS package, which supports newer models and capabilities, enhancing AIoT applications.
- Response Object Parity: Updated response objects to closely align with the OpenAI documented response object structures, ensuring that your integration can seamlessly handle newer data formats.
- New Functionalities: Addition of new capabilities such as Batch requests and Vector Store features to enhance your projects.
- Updated Examples: Updated examples showcasing new API features and functionality.
- Bug Fixes: Closed out a series of bugs improving overall usability and stability.
- Backward Incompatible Changes: Please be aware that v1.0 includes breaking changes that may affect existing implementations (v0.x.x instllations) due to the updated OpenAI NodeJS package:
- The API call structure and parameters have been refined to align with the latest OpenAI specifications.
- Some functions and settings from previous versions may no longer be compatible with this update.
- List responses now exist at the top level of the
msg.payload
object; previouslymsg.payload.data
.
I recommend reviewing existing flows and testing them with this new version in a development environment before updating to ensure a smooth transition. This will help you take full advantage of the enhanced features while managing any necessary adjustments in your existing applications.
Node-RED OpenAI API Works with your favorite OpenAI API compatible servers, including:
- Baseten
- Cloudflare Workers AI
- gpt4all
- Google AI Studio
- Groq
- Hugging Face Inference API
- Jan
- Lightning AI
- LiteLLM
- llama.cpp
- llamafile
- LlamaIndex
- LM Studio
- LMDeploy
- LocalAI
- Mistral AI
- Ollama
- OpenRouter
- Titan ML
- Vllm
- and many more...
I value community contributions that help enhance this Node-RED node and expand its capabilities in AIoT applications. Whether you're fixing bugs, adding new features, or improving documentation, your help is welcome!
- Fork the Repository: Start by forking the repository to your GitHub account.
- Clone Your Fork: Clone your fork to your local machine for development.
- Create a Feature Branch: Create a branch in your forked repository where you can make your changes.
- Commit Your Changes: Make your changes in your feature branch and commit them with clear, descriptive messages.
- Push to Your Fork: Push your changes to your fork on GitHub.
- Submit a Pull Request: Go to the original repository and submit a pull request from your feature branch. Please provide a clear description of the changes and reference any related issues.
- Ensure your code adheres to or enhances the project's style and quality standards.
- Include unit tests for new features to confirm they work as expected.
- Update documentation to reflect any changes or additions made.
Engage with the Node-RED OpenAI API community to share your experiences, get support, and discuss your ideas. Whether you're using the node or contributing to its development, we're here to help and look forward to your feedback and contributions.
- Community Discussions: For any questions, help with setting up, or to connect with other users and contributors, please visit our Community Discussions.
- Feedback and Issues: If you encounter any issues or have suggestions, please raise an issue directly on GitHub.
- Contributing: Your contributions are invaluable to us. See the How to Contribute section for more details on how to get involved.
Thank you for being part of our innovative community!
This project is licensed under the MIT License.
Thank you for being part of the Node-RED community!