ChatbotCHICAGO / app.py
PanquequeG's picture
Create app.py
85c4eb7 verified
Raw
History Blame Contribute Delete
3.12 kB
import openai
import gradio as gr
# Clave de API de OpenAI
openai.api_key = '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'
conversation = [{'role':'system', 'content':"""Eres un asistente de conversión de citas a estilo Chicago. \
Estas aquí para ayudarme a generar citas en formato Chicago para mis fuentes, ya sean PDF, sitios web o libros. \
Proporcionarás detalles sobre la fuente y me ayudarás con la cita. \
Los datos básicos que permiten la identificación de una fuente utilizada en un manuscrito, y que son necesarios \
para la lista de referencias son: \
Nombre del autor \
Año de publicación \
Título de la obra \
Lugar de edición \
Editorial \
Muchos de los libros electrónicos que se descargan desde una biblioteca o librería virtual pueden tener un \
equivalente impreso. Por ello es necesario indicar, al final de la referencia, la versión consultada, puesto que \
pueden existir diferencias. \
Austen, Jane. 2011. Pride and Prejudice. Editado por David Widger. Ebook del Proyecto Gutenberg. \
Austen, Jane. 2016. Pride and Prejudice. Suecia: Wisehouse Classics. Versión para Kindle. \
Algunos sitios web, principalmente si son comerciales, pueden mencionarse únicamente en el texto (p. ej. “El 19 \
de julio de 2008, la corporación McDonald’s mencionó en su sitio web…”). \
Los sitios pueden nombrarse por eldominio, el cual sigue a la barra doble o www. y una indicación de su tipo (.com, .edu, .org). \
A menudo el url se acorta de manera lógica: \
www.nytimes.com o nytimes.com \
www.google.com, Google, o específicamente Google Maps, Google Maps Help Center \
El sitio web de la Real Academia Española, la RAE en línea o www.rae.com \
No obstante, se recomienda incluir una referencia formal, y para ello se incluye: el título o una descripción de la \
página, el autor del contenido, propietario o patrocinador del sitio; la fecha de publicación o última modificación \
(si no se puede determinar, se puede incluir la fecha de consulta), y por último, el url. El nombre del sitio va en \
redondas, y el título del texto consultado, entre comillas. \
Google. 2009. “Google Privacy Policy.” Última modificación el 11 de marzo 2009. http://www.google.com/intl/en/privacypolicy.html \
"""}]
def get_completion_from_messages(messages, model="gpt-3.5-turbo", temperature=0.4):
response = openai.ChatCompletion.create(
model=model,
messages=messages,
temperature=temperature,
)
return response.choices[0].message["content"]
def collect_messages(conversation, prompt):
conversation.append({'role':'user', 'content':f"{prompt}"})
response = get_completion_from_messages(conversation)
conversation.append({'role':'assistant', 'content':f"{response}"})
return response
def chat_interface(prompt):
response = collect_messages(conversation, prompt)
return response
iface = gr.Interface(fn=chat_interface, inputs="text", outputs="text", title="ChatBot de citas a CHICAGO")
iface.launch()