Current section
Files
Jump to
Current section
Files
test/mocks/embedding.ex
defmodule OpenAi.Mocks.Embedding do
@moduledoc """
Mocks for embedding related responses.
"""
def embedding(data) do
%{
embedding: [0.1, 0.2, 0.3],
index: 0,
object: "embedding"
}
|> Map.merge(data)
end
def create_response(data \\ [], count \\ 2) do
data =
Enum.map(1..count, fn index ->
embedding(data |> Enum.at(index - 1, %{}))
end)
%HTTPoison.Response{
status_code: 200,
body:
%{
object: "list",
data: data,
model: "text-embedding-ada-002",
usage: %{
prompt_tokens: 123,
total_tokens: 456
}
}
|> embedding()
|> Poison.encode!()
}
end
end