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"}
]
end
Then, 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" # Optional
Replace "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.