EddyGiusepe's picture
Tarefas com Marvin (To-Do App)
5527038
"""
Data Scientist.: Dr. Eddy Giusepe Chirinos Isidro
Link de estudo --> https://www.askmarvin.ai/components/ai_application/
Aplicativo de tarefas (To-Do App)
=================================
Para demonstrar o uso do atributo 'state', construiremos um aplicativo de
tarefas simples. Podemos fornecer ao aplicativo uma personalização 'ToDoState'
que descreva todos os campos que desejamos que ele monitore.
"""
# Substitua sua chave de API OpenAI:
import openai
import os
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv()) # read local .env file
openai.api_key = os.environ['OPENAI_API_KEY']
from datetime import datetime
from pydantic import BaseModel
from marvin import AIApplication
class ToDo(BaseModel):
title: str
description: str
due_date: datetime = None
done: bool = False
class ToDoState(BaseModel):
todos: list[ToDo] = []
todo_app = AIApplication(
state=ToDoState(),
description=(
"""
Um rastreador de tarefas simples. Os usuários darão instruções \
para adicionar, remover e atualizar suas tarefas.
"""
),
)
"""
Agora podemos interagir com o aplicativo em linguagem natural e posteriormente
examinar seu 'state' para ver se ele atualizou adequadamente nossas tarefas:
"""
response = todo_app("Amanhã tenho prova de cálculo na Universidade.")
print(response.content)
print("")
print(todo_app.state)
print("\033[033mPodemos informar que a tarefa foi concluída 🤓\033[m")
response = todo_app("Eu tirei 10 na minha prova.")
print(response.content)
print("")
print(todo_app.state)