Compartir a través de


Inicio rápido de Microsoft Foundry (clásico)

Nota:

Este documento hace referencia al portal de Microsoft Foundry (clásico).

🔍 Consulte la documentación de Microsoft Foundry (nuevo) para obtener información sobre el nuevo portal.

En este inicio rápido, usará Microsoft Foundry para:

  • Creación de un proyecto
  • Implementar un modelo
  • Ejecución de una finalización de chat
  • Creación y ejecución de un agente
  • Carga de archivos en el agente

El SDK de Microsoft Foundry está disponible en varios lenguajes, como Python, Java, TypeScript y C#. En este inicio rápido se proporcionan instrucciones para cada uno de estos idiomas.

Sugerencia

El resto de este artículo muestra cómo crear y usar un proyecto Foundry. Revise Inicio rápido: Introducción a Microsoft Foundry (proyectos de Hub) si quiere usar un proyecto basado en Hub como alternativa. ¿Qué tipo de proyecto necesito?

Prerrequisitos

Importante

Antes de empezar, asegúrese de que el entorno de desarrollo esté listo.
Este inicio rápido se centra en pasos específicos del escenario , como la instalación del SDK, la autenticación y la ejecución de código de ejemplo.

En el portal, puede explorar un amplio catálogo de modelos de vanguardia de muchos proveedores diferentes. Para este tutorial, busque y seleccione el modelo gpt-4o .

  1. Inicie sesión en Microsoft Foundry. Asegúrese de que el conmutador New Foundry está desactivado. Estos pasos hacen referencia a Foundry (clásico).

  2. Si está en un proyecto, seleccione Microsoft Foundry en la ruta de navegación superior izquierda para dejar el proyecto. Tú vas a crear uno nuevo en un momento.

  3. En la página de inicio o el catálogo de modelos, seleccione gpt-4o (o gpt-4o-mini).

    Captura de pantalla que muestra cómo empezar con un modelo en el portal de Foundry.

  4. Seleccione Usar este modelo. Cuando se le solicite, escriba un nuevo nombre de proyecto y seleccione Crear.

  5. Revise el nombre de la implementación y seleccione Crear.

  6. A continuación, seleccione Conectar e implementar después de seleccionar un tipo de implementación.

  7. Seleccione Abrir en el área de juegos en la página de implementación después de implementarla.

  8. Llegará al área de juegos de chat con el modelo implementado previamente y listo para su uso.

Si estás construyendo un agente, puede empezar con Crear un agente. Los pasos son similares, pero en un orden diferente. Una vez creado el proyecto, llegará al entorno del agente en lugar del entorno del chat.

Prepárese para programar

Sugerencia

El código usa el SDK de Azure AI Projects 1.x y no es compatible con Azure AI Projects 2.x. Consulte la documentación de Foundry (nuevo) para la versión de Azure AI Projects 2.x.

  1. Instale estos paquetes:

    pip install openai azure-identity azure-ai-projects==1.0.0
    
  2. Busque el punto de conexión del proyecto en la pantalla de bienvenida del proyecto.

    Captura de pantalla de la pantalla de bienvenida de Microsoft Foundry Models que muestra la dirección URL del punto de conexión y el botón copiar.

  3. Asegúrese de iniciar sesión con el comando de la CLI az login (o az login --use-device-code) para autenticarse antes de ejecutar los scripts de Python.

Siga estos pasos a continuación o obtenga el código:

Chatear con un modelo

Las conversaciones por chat son la piedra angular de las aplicaciones de inteligencia artificial. Con finalizaciones de chat, puede enviar una lista de mensajes y obtener una respuesta del modelo.

Sugerencia

El código usa el SDK de Azure AI Projects 1.x y no es compatible con Azure AI Projects 2.x. Consulte la documentación de Foundry (nuevo) para la versión de Azure AI Projects 2.x.

Sustituya su punto de conexión por el endpoint en este código.

from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential

project = AIProjectClient(
    endpoint="https://your-foundry-resource-name.ai.azure.com/api/projects/project-name",
    credential=DefaultAzureCredential(),
)

models = project.get_openai_client(api_version="2024-10-21")
response = models.chat.completions.create(
    model="gpt-4o",
    messages=[
        {"role": "system", "content": "You are a helpful writing assistant"},
        {"role": "user", "content": "Write me a poem about flowers"},
    ],
)

print(response.choices[0].message.content)

Chatear con un agente

Cree un agente y chate con él.

Sugerencia

El código usa el SDK de Azure AI Projects 1.x y no es compatible con Azure AI Projects 2.x. Consulte la documentación de Foundry (nuevo) para la versión de Azure AI Projects 2.x.

Sustituya su punto de conexión por el endpoint en este código.

from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential
from azure.ai.agents.models import ListSortOrder, FilePurpose

project = AIProjectClient(
    endpoint="https://your-foundry-resource-name.ai.azure.com/api/projects/project-name",
    credential=DefaultAzureCredential(),
)

agent = project.agents.create_agent(
    model="gpt-4o",
    name="my-agent",
    instructions="You are a helpful writing assistant")

thread = project.agents.threads.create()
message = project.agents.messages.create(
    thread_id=thread.id, 
    role="user", 
    content="Write me a poem about flowers")

run = project.agents.runs.create_and_process(thread_id=thread.id, agent_id=agent.id)
if run.status == "failed":
    # Check if you got "Rate limit is exceeded.", then you want to get more quota
    print(f"Run failed: {run.last_error}")

# Get messages from the thread
messages = project.agents.messages.list(thread_id=thread.id)

# Get the last message from the sender
messages = project.agents.messages.list(thread_id=thread.id, order=ListSortOrder.ASCENDING)
for message in messages:
    if message.run_id == run.id and message.text_messages:
        print(f"{message.role}: {message.text_messages[-1].text.value}")

# Delete the agent once done
project.agents.delete_agent(agent.id)
print("Deleted agent")

Adición de archivos al agente

Los agentes tienen funcionalidades eficaces mediante el uso de herramientas. Vamos a agregar una herramienta de búsqueda de archivos que nos permita realizar la recuperación de conocimientos.

Sugerencia

El código usa el SDK de Azure AI Projects 1.x y no es compatible con Azure AI Projects 2.x. Consulte la documentación de Foundry (nuevo) para la versión de Azure AI Projects 2.x.

Sustituya su punto de conexión por el endpoint en este código.

from azure.ai.projects import AIProjectClient
from azure.identity import DefaultAzureCredential
from azure.ai.agents.models import ListSortOrder, FileSearchTool

project = AIProjectClient(
    endpoint="https://your-foundry-resource-name.ai.azure.com/api/projects/project-name",
    credential=DefaultAzureCredential(),
)

# Upload file and create vector store
file = project.agents.files.upload(file_path="./product_info_1.md", purpose=FilePurpose.AGENTS)
vector_store = project.agents.vector_stores.create_and_poll(file_ids=[file.id], name="my_vectorstore")

# Create file search tool and agent
file_search = FileSearchTool(vector_store_ids=[vector_store.id])
agent = project.agents.create_agent(
    model="gpt-4o",
    name="my-assistant",
    instructions="You are a helpful assistant and can search information from uploaded files",
    tools=file_search.definitions,
    tool_resources=file_search.resources,
)

# Create thread and process user message
thread = project.agents.threads.create()
project.agents.messages.create(thread_id=thread.id, role="user", content="Hello, what Contoso products do you know?")
run = project.agents.runs.create_and_process(thread_id=thread.id, agent_id=agent.id)

# Handle run status
if run.status == "failed":
    print(f"Run failed: {run.last_error}")

# Print thread messages
messages = project.agents.messages.list(thread_id=thread.id, order=ListSortOrder.ASCENDING)
for message in messages:
    if message.run_id == run.id and message.text_messages:
        print(f"{message.role}: {message.text_messages[-1].text.value}")

# Cleanup resources
project.agents.vector_stores.delete(vector_store.id)
project.agents.files.delete(file_id=file.id)
project.agents.delete_agent(agent.id)

Limpieza de recursos

Si ya no necesita ninguno de los recursos que ha creado, elimine el grupo de recursos asociado al proyecto.

  • En Azure Portal, seleccione el grupo de recursos y, a continuación, seleccione Eliminar. Confirme que desea eliminar el grupo de recursos.