Assistants API(미리 보기) 메시지 참조
참고 항목
- 파일 검색은 도우미당 최대 10,000개의 파일을 수집할 수 있으며, 이는 이전보다 500배 이상 높은 수치입니다. 빠르고 다중 스레드 검색을 통해 병렬 쿼리를 지원하며 향상된 순위 재지정 및 쿼리 다시 쓰기 기능을 제공합니다.
- 벡터 저장소는 API의 새 개체입니다. 파일이 벡터 저장소에 추가되면 자동으로 구문 분석, 청크 분할, 포함되어 검색할 수 있는 상태가 됩니다. 벡터 저장소는 도우미와 스레드에서 사용할 수 있으므로 파일 관리 및 청구를 간소화합니다.
- 특정 실행에서 특정 도구(예: 파일 검색, 코드 인터프리터, 함수)를 강제로 사용하는 데 사용할 수 있는
tool_choice
매개 변수에 대한 지원이 추가되었습니다.
이 문서에서는 새 도우미 API(미리 보기)에 대한 Python 및 REST에 대한 참조 설명서를 제공합니다. 더 자세한 단계별 지침은 시작 가이드에서 제공됩니다.
메시지 만들기
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages?api-version=2024-08-01-preview
메시지 작성.
경로 매개 변수
매개 변수 | Type | 필수 | 설명 |
---|---|---|---|
thread_id |
string | Required | 메시지를 만들 스레드의 ID입니다. |
요청 본문
이름 | Type | 필수 | 설명 |
---|---|---|---|
role |
string | Required | 메시지를 만드는 엔터티의 역할입니다. user 또는 assistant 일 수 있습니다. user 는 메시지가 실제 사용자에 의해 전송되었으며 대부분의 경우 사용자 생성 메시지를 나타내는 데 사용되어야 함을 나타냅니다. assistant 는 메시지가 도우미에 의해 생성되었음을 나타냅니다. 도우미의 메시지를 대화에 삽입하려면 이 값을 사용합니다. |
content |
string | Required | 메시지의 내용입니다. |
attachments |
배열 | 선택 사항 | 메시지에 첨부된 파일 목록 및 추가해야 하는 도구입니다. |
metadata |
map | 선택 사항 | 개체에 연결할 수 있는 16개의 키-값 쌍 집합입니다. 이는 구조화된 형식으로 개체에 대한 추가 정보를 저장하는 데 유용할 수 있습니다. 키의 길이는 최대 64자이고 값은 최대 512자까지 가능합니다. |
반환
메시지 개체
메시지 만들기 요청 예제
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")
)
thread_message = client.beta.threads.messages.create(
"thread_abc123",
role="user",
content="How does AI work? Explain it in simple terms.",
)
print(thread_message)
메시지 나열
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages?api-version=2024-08-01-preview
지정된 스레드에 대한 메시지 목록을 반환합니다.
경로 매개 변수
매개 변수 | Type | 필수 | 설명 |
---|---|---|---|
thread_id |
string | Required | 메시지가 속한 스레드의 ID입니다. |
쿼리 매개 변수
이름 | Type | 필수 | 설명 |
---|---|---|---|
limit |
정수 | 선택 사항 - 기본값은 20입니다. | 반환할 개체 수에 대한 제한입니다. 제한 범위는 1~100이며 기본값은 20입니다. |
order |
string | 선택 사항 - 기본값은 desc입니다. | 개체의 Created_at 타임스탬프를 기준으로 정렬 순서입니다. 오름차순은 asc, 내림차순은 desc입니다. |
after |
string | 선택 사항 | 페이지 매김에 사용되는 커서입니다. after는 목록에서의 위치를 정의하는 개체 ID입니다. 예를 들어, 목록 요청을 하고 obj_foo로 끝나는 100개의 개체를 받은 경우 목록의 다음 페이지를 페치하기 위해 후속 호출에 after=obj_foo가 포함될 수 있습니다. |
run_id |
string | Optionanl | 메시지를 생성한 실행 ID로 필터링합니다. |
before |
string | 선택 사항 | 페이지 매김에 사용되는 커서입니다. before는 목록에서의 위치를 정의하는 개체 ID입니다. 예를 들어, 목록 요청을 하고 obj_foo로 끝나는 100개의 개체를 받은 경우 목록의 이전 페이지를 페치하기 위해 후속 호출에 before=obj_foo가 포함될 수 있습니다. |
반환
메시지 개체 목록입니다.
메시지 나열 요청 예제
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")
)
thread_messages = client.beta.threads.messages.list("thread_abc123")
print(thread_messages.data)
메시지 검색
GET https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages/{message_id}?api-version=2024-08-01-preview
메시지 파일을 검색합니다.
경로 매개 변수
매개 변수 | Type | 필수 | 설명 |
---|---|---|---|
thread_id |
string | Required | 메시지가 속한 스레드의 ID입니다. |
message_id |
string | Required | 검색할 메시지의 ID입니다. |
반환
지정된 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")
)
message = client.beta.threads.messages.retrieve(
message_id="msg_abc123",
thread_id="thread_abc123",
)
print(message)
메시지 수정
POST https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages/{message_id}?api-version=2024-08-01-preview
메시지를 수정합니다.
경로 매개 변수
매개 변수 | Type | 필수 | 설명 |
---|---|---|---|
thread_id |
string | Required | 메시지가 속한 스레드의 ID입니다. |
message_id |
string | Required | 수정할 메시지의 ID입니다. |
요청 본문
매개 변수 | Type | 필수 | 설명 |
---|---|---|---|
metadata |
map | 선택 사항 | 개체에 연결할 수 있는 16개의 키-값 쌍 집합입니다. 이는 구조화된 형식으로 개체에 대한 추가 정보를 저장하는 데 유용할 수 있습니다. 키의 길이는 최대 64자이고 값은 최대 512자까지 가능합니다. |
반환
수정된 메시지 개체입니다.
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")
)
message = client.beta.threads.messages.update(
message_id="msg_abc12",
thread_id="thread_abc123",
metadata={
"modified": "true",
"user": "abc123",
},
)
print(message)
메시지 삭제
DELETE https://YOUR_RESOURCE_NAME.openai.azure.com/openai/threads/{thread_id}/messages/{message_id}?api-version=2024-08-01-preview
메시지를 삭제합니다.
경로 매개 변수
매개 변수 | Type | 필수 | 설명 |
---|---|---|---|
thread_id |
string | Required | 메시지가 속한 스레드의 ID입니다. |
message_id |
string | Required | 수정할 메시지의 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")
)
deleted_message = client.beta.threads.messages.delete(
message_id="msg_abc12",
thread_id="thread_abc123",
)
print(deleted_message)
Message 개체
스레드 내의 메시지를 나타냅니다.
이름 | 형식 | 설명 |
---|---|---|
id |
string | API 엔드포인트에서 참조할 수 있는 식별자입니다. |
object |
string | 항상 thread.message인 개체 형식입니다. |
created_at |
정수 | 메시지가 만들어진 시점의 Unix 타임스탬프(초)입니다. |
thread_id |
string | 이 메시지가 속한 스레드의 ID입니다. |
role |
string | 메시지를 생성한 엔터티입니다. user 또는 assistant 중 하나입니다. |
content |
배열 | 텍스트 및/또는 이미지 배열에서 메시지의 내용입니다. |
assistant_id |
문자열 또는 null | 해당하는 경우 이 메시지를 작성한 도우미의 ID입니다. |
run_id |
문자열 또는 null | 해당하는 경우 이 메시지의 작성과 연결된 실행의 ID입니다. |
file_ids |
배열 | 도우미가 사용해야 하는 파일 ID 목록입니다. 파일에 액세스할 수 있는 retrieval 및 code_interpreter 같은 도구에 유용합니다. 최대 10개 파일을 하나의 메시지에 첨부할 수 있습니다. |
metadata |
map | 개체에 연결할 수 있는 16개의 키-값 쌍 집합입니다. 이는 구조화된 형식으로 개체에 대한 추가 정보를 저장하는 데 유용할 수 있습니다. 키의 길이는 최대 64자이고 값은 최대 512자까지 가능합니다. |