도우미 API(미리 보기) 스레드 참조
참고 항목
- 파일 검색은 도우미당 최대 10,000개의 파일을 수집할 수 있으며, 이는 이전보다 500배 이상 높은 수치입니다. 빠르고 다중 스레드 검색을 통해 병렬 쿼리를 지원하며 향상된 순위 재지정 및 쿼리 다시 쓰기 기능을 제공합니다.
- 벡터 저장소는 API의 새 개체입니다. 파일이 벡터 저장소에 추가되면 자동으로 구문 분석, 청크 분할, 포함되어 검색할 수 있는 상태가 됩니다. 벡터 저장소는 도우미와 스레드에서 사용할 수 있으므로 파일 관리 및 청구를 간소화합니다.
- 특정 실행에서 특정 도구(예: 파일 검색, 코드 인터프리터, 함수)를 강제로 사용하는 데 사용할 수 있는
tool_choice
매개 변수에 대한 지원이 추가되었습니다.
이 문서에서는 새 도우미 API(미리 보기)에 대한 Python 및 REST에 대한 참조 설명서를 제공합니다. 시작 가이드에 자세한 단계별 지침이 제공됩니다.
스레드 만들기
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads?api-version=2024-08-01-preview
스레드를 만듭니다.
요청 본문
이름 | Type | 필수 | 설명 |
---|---|---|---|
messages |
배열 | 선택 사항 | 스레드를 시작할 메시지 목록입니다. |
metadata |
map | 선택 사항 | 개체에 연결할 수 있는 16개의 키-값 쌍 집합입니다. 이는 구조화된 형식으로 개체에 대한 추가 정보를 저장하는 데 유용할 수 있습니다. 키의 길이는 최대 64자이고 값은 최대 512자까지 가능합니다. |
tool_resources |
object | 선택 사항 | 이 스레드의 도우미 도구에서 사용할 수 있는 리소스 집합입니다. 리소스는 도구 유형에 따라 다릅니다. 예를 들어 code_interpreter 도구에는 파일 ID 목록이 필요하지만 file_search 도구에는 벡터 저장소 ID 목록이 필요합니다. |
tool_resources 속성
code_interpreter
속성 | 형식 | 설명 | 기본값 |
---|---|---|---|
file_ids |
배열 | code_interpreter 도구에서 사용할 수 있는 파일 ID 목록입니다. 도구와 연결된 파일은 최대 20개일 수 있습니다. | [] |
file_search
속성 | 형식 | 설명 | 기본값 |
---|---|---|---|
vector_store_ids |
배열 | 이 스레드에 연결된 벡터 저장소입니다. 스레드에 연결된 벡터 저장소가 최대 1개 있을 수 있습니다. | [] |
vector_stores |
배열 | file_ids를 사용하여 벡터 저장소를 만들고 이 스레드에 연결하기 위한 도우미입니다. 스레드에 연결된 벡터 저장소가 최대 1개 있을 수 있습니다. | [] |
반품
예: 스레드 만들기 요청
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-08-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
empty_thread = client.beta.threads.create()
print(empty_thread)
스레드 검색
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}?api-version=2024-08-01-preview
스레드를 검색합니다.
경로 매개 변수
매개 변수 | Type | 필수 | 설명 |
---|---|---|---|
thread_id |
string | Required | 검색할 스레드의 ID입니다. |
반환
지정된 ID와 일치하는 스레드 개체입니다.
예: 스레드 검색 요청
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-08-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
my_thread = client.beta.threads.retrieve("thread_abc123")
print(my_thread)
스레드 수정
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}?api-version=2024-08-01-preview
스레드를 수정합니다.
경로 매개 변수
매개 변수 | Type | 필수 | 설명 |
---|---|---|---|
thread_id |
string | Required | 수정할 스레드의 ID입니다. |
요청 본문
이름 | Type | 필수 | 설명 |
---|---|---|---|
metadata |
map | 선택 사항 | 개체에 연결할 수 있는 16개의 키-값 쌍 집합입니다. 이는 구조화된 형식으로 개체에 대한 추가 정보를 저장하는 데 유용할 수 있습니다. 키의 길이는 최대 64자이고 값은 최대 512자까지 가능합니다. |
tool_resources |
object | 선택 사항 | 이 스레드의 도우미 도구에서 사용할 수 있는 리소스 집합입니다. 리소스는 도구 유형에 따라 다릅니다. 예를 들어 code_interpreter 도구에는 파일 ID 목록이 필요하지만 file_search 도구에는 벡터 저장소 ID 목록이 필요합니다. |
반품
지정된 ID와 일치하는 수정된 스레드 개체입니다.
예: 스레드 수정 요청
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-08-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
my_updated_thread = client.beta.threads.update(
"thread_abc123",
metadata={
"modified": "true",
"user": "abc123"
}
)
print(my_updated_thread)
스레드 삭제
DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}?api-version=2024-05-01-preview
스레드를 삭제합니다.
경로 매개 변수
매개 변수 | Type | 필수 | 설명 |
---|---|---|---|
thread_id |
string | Required | 삭제할 스레드의 ID입니다. |
반환
삭제 상태입니다.
예: 스레드 삭제 요청
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-05-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
response = client.beta.threads.delete("thread_abc123")
print(response)
스레드 개체
필드 | 형식 | 설명 |
---|---|---|
id |
string | API 엔드포인트에서 참조할 수 있는 식별자입니다. |
object |
string | 항상 스레드인 개체 형식입니다. |
created_at |
정수 | 스레드가 만들어진 시점의 Unix 타임스탬프(초)입니다. |
metadata |
map | 개체에 연결할 수 있는 16개의 키-값 쌍 집합입니다. 이는 구조화된 형식으로 개체에 대한 추가 정보를 저장하는 데 유용할 수 있습니다. 키의 길이는 최대 64자이고 값은 최대 512자까지 가능합니다. |