openai.Embedding.create函数解析
时间: 2024-04-30 15:20:12 浏览: 174
`openai.Embedding.create` 函数是 OpenAI API 中用于创建 embedding 的函数,它可以将一组文本编码为向量,以便于进行自然语言处理任务。下面是该函数的详细解析:
```python
def create(engine: str, prompt: str, temperature: float = 0.5, max_tokens: int = 2048, n: int = 1, stop: Optional[str] = None, metadata: Optional[Dict[str, str]] = None) -> Dict[str, List[float]]:
```
- `engine`:选择使用的模型引擎,可以是 "davinci", "curie", "babbage" 或 "ada"。其中 "davinci" 是最先进的引擎,但是也是最昂贵的。
- `prompt`:要编码为向量的文本字符串。
- `temperature`:生成文本时使用的温度值,控制生成文本的多样性。默认值为 0.5。
- `max_tokens`:生成文本时生成的最大 token 数量。默认值为 2048。
- `n`:生成多少个文本样本。默认值为 1。
- `stop`:一个字符串,用于指定生成文本的结束标志。如果生成的文本中包含了该字符串,则生成文本会在该字符串处结束。默认值为 None。
- `metadata`:一个字典,可以用来存储和记录与生成文本相关的元数据。默认值为 None。
该函数返回一个字典,其中包含了编码后的文本和其对应的向量。例如:
```python
{
"outputs": [
{
"data": {
"embeddings": [
[-0.018548, 0.000025, -0.082535, ...],
[-0.012038, 0.004502, -0.082375, ...],
...
],
"text": [
"Hello, world!",
"How are you today?"
]
}
}
],
"model": ...
}
```
其中 `embeddings` 是一个列表,包含了编码后的向量;`text` 是一个列表,包含了原始文本。
阅读全文