For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Navegação principal
Theme

Gerenciar sessões

Encontre sessões, execute as ações necessárias e exclua trabalhos salvos.

Armazene o ID de cada sessão no repositório de dados do aplicativo. Use esse ID para consultar o estado atual da sessão, atender às solicitações do agente ou excluir a sessão.

Encontrar sessões

Liste as sessões do projeto para consultar trabalhos anteriores. Use os recursos de paginação do SDK para obter mais páginas.

Listar sessões e obter a próxima página
from openai import OpenAI

client = OpenAI()
page = client.beta.agents.sessions.list(limit=20)
print(page.to_json())
if page.has_next_page():
    page = page.get_next_page()
    print(page.to_json())

Inspecionar uma sessão

Recupere a sessão para verificar o status, a configuração do agente, o ambiente e o conteúdo de required_actions. Passe o cliente da API e o ID da sessão correspondente à conversa.

Recuperar uma sessão
# Pass your saved session ID to this helper.
def retrieve_session(client: OpenAI, session_id: str):
    return client.beta.agents.sessions.retrieve(session_id)

Consulte a referência da operação de recuperação de sessão para ver o schema completo da resposta.

Executar as ações necessárias

Quando uma sessão está com o status requires_action, o aplicativo precisa agir para que o trabalho possa continuar. Ao receber o evento agent.session.requires_action, recupere a sessão e verifique cada item de required_actions.

  • function_call: Execute a função indicada por name com os argumentos de arguments. Retorne o resultado na mesma sessão usando os valores de turn_id e call_id da ação. Consulte Ferramentas de função.
  • environment_connection: Conecte o ambiente identificado por environment_id. Consulte Conectar um ambiente.

O evento indica quando o aplicativo deve consultar a sessão. Os dados da sessão indicam quais ações executar. Após uma reinicialização ou uma desconexão do fluxo de eventos, recupere a sessão para identificar as ações pendentes. Depois de executá-las, continue acompanhando os eventos para saber o resultado do turno.

Para consultar mensagens salvas, chamadas de ferramentas e resultados de turnos, veja Buscar itens e turnos. Para identificar qual agente executou um comando, veja Acompanhar a delegação.

Excluir uma sessão

Exclua a sessão quando o aplicativo não precisar mais dela. A exclusão remove a sessão da API. A remoção física dos dados pode continuar de forma assíncrona.

Excluir uma sessão
# Replace the illustrative IDs and URLs below with your own resource values.

from openai import OpenAI


def delete_session(client: OpenAI, session_id: str):
    return client.beta.agents.sessions.delete(session_id)


if __name__ == "__main__":
    result = delete_session(OpenAI(), "sess_123")
    print(result.to_json())

Para interromper o trabalho em andamento e manter a conversa, cancele o turno ativo. Consulte a referência da operação de exclusão de sessão para ver a resposta dessa operação.