README.md
# README
[![License](https://img.shields.io/hexpm/l/google_ai.svg)](https://github.com/jadengis/google_ai_ex/blob/master/LICENSE)
[![Hex Package](https://img.shields.io/hexpm/v/google_ai.svg)](https://hex.pm/packages/google_ai)
[![Hex Docs](https://img.shields.io/badge/hex-docs-blue.svg)](https://hexdocs.pm/google_ai)
[![CI](https://github.com/jadengis/google_ai_ex/actions/workflows/ci.yml/badge.svg)](https://github.com/jadengis/google_ai_ex/actions/workflows/ci.yml)
`GoogleAI` is an Elixir library that provides a community-maintained Google AI API client.
See https://ai.google.dev/tutorials/rest_quickstart for more information of the Google AI REST API.
## Installation
The package can be installed by adding `google_ai` to your list of dependencies in `mix.exs`:
```elixir
def deps do
[
{:google_ai, "~> 0.1.0"}
]
end
```
Documentation can be generated with [ExDoc](https://github.com/elixir-lang/ex_doc)
and published on [HexDocs](https://hexdocs.pm). Once published, the docs can
be found at <https://hexdocs.pm/google_ai>.
## Features
- [x] `generateContent` - Text-only input
- [ ] `generateContent` - Text-and-image Input
- [ ] `generateContent` - Multi-turn conversation
- [x] `generateContent` - Configuration
- [ ] `streamGenerateContent`
- [x] `countTokens`
- [x] `embedContent`
- [x] `batchEmbedContents`
- [x] Get model
- [x] List models
## Configuration
You can configure `google_ai` in your mix config.exs (default $project_root/config/config.exs). If you're using Phoenix add the configuration in your config/dev.exs|test.exs|prod.exs files. An example config is:
```elixir
import Config
config :google_ai,
# find it at https://makersuite.google.com/app/apikey
api_key: "your-api-key",
```
## License
MIT