Noizu.OpenAI is an Elixir wrapper for the OpenAI API. It provides a simple and convenient way to interact with OpenAI's powerful AI models for tasks like text generation, completion, translation, image generation, and more.
To install Noizu.OpenAI, add the following to your mix.exs file:
defp deps do
[
{:noizu_labs_open_ai, "~> 0.1.0"}
]
endThen, run mix deps.get to fetch the dependencies.
To configure the Noizu.OpenAI, add the following to your config.exs or the appropriate environment-specific config file:
config :noizu_openai,
openai_api_key: "your_openai_api_key",
openai_org: "your_openai_organization_id" # OptionalReplace "your_openai_api_key" with your actual OpenAI API key, and "your_openai_organization_id" with your OpenAI organization ID if applicable.
Noizu.OpenAI provides modules for different OpenAI API endpoints:
- Noizu.OpenAI.Api.Audio
- Noizu.OpenAI.Api.Chat
- Noizu.OpenAI.Api.Completion
- Noizu.OpenAI.Api.Edit
- Noizu.OpenAI.Api.Embedding
- Noizu.OpenAI.Api.Engine
- Noizu.OpenAI.Api.File
- Noizu.OpenAI.Api.FineTune *deprecated
- Noizu.OpenAI.Api.Image
- Noizu.OpenAI.Api.Model
- Noizu.OpenAI.Api.Thread
- Noizu.OpenAI.Api.Assistant
- Noizu.OpenAI.Api.FineTuning
Each module corresponds to a specific functionality provided by the OpenAI API. You can use the functions in these modules to interact with the respective API endpoints.
Here's an example of using the Noizu.OpenAI.Api.Chat module to generate a chatbot response:
alias Noizu.OpenAI.Api.Chat
messages = [
%{"role" => "system", "content" => "You are a helpful assistant."},
%{"role" => "user", "content" => "Who won the world series in 2020?"},
]
{:ok, response} = Chat.chat(messages)Refer to the documentation for each module to learn about the available functions and their usage.
You can generate the documentation for this project using ExDoc. Run mix docs and open the doc/index.html file in your browser.
To run the tests for this project, use the command mix test.
If you'd like to contribute to the development of Noizu.OpenAI, please submit a pull request with your changes or open an issue to discuss your proposed changes.
Noizu.OpenAI is released under the MIT License.