Spaces:
Sleeping
Sleeping
from langchain.chat_models import ChatOpenAI | |
import streamlit as st | |
def chatseo(): | |
from langchain import PromptTemplate | |
from langchain.prompts.chat import ( | |
ChatPromptTemplate, | |
SystemMessagePromptTemplate, | |
AIMessagePromptTemplate, | |
HumanMessagePromptTemplate, | |
) | |
template="You are an SEO Analyser.\nYou will be given an issue dealt with SEO, and its description.\nFor a given url, you need to create a 5 step plan to fix that issue.\nRemember to give examples as well for each step. Include some necessary code to fix that issue like ```some code```." | |
system_message_prompt = SystemMessagePromptTemplate.from_template(template) | |
human_template="Issue: {issue}\nDescription: {description}\nURL: {url}" | |
human_message_prompt = HumanMessagePromptTemplate.from_template(human_template) | |
chat_prompt = ChatPromptTemplate.from_messages([system_message_prompt, human_message_prompt]) | |
return chat_prompt | |
# get a chat completion from the formatted messages | |
chat_prompt = chatseo() | |
def chat_with_chatseo(issue, description, url, chat_prompt = chat_prompt): | |
chat = ChatOpenAI(openai_api_key=st.secrets["openai_api_key"]) | |
return chat(chat_prompt.format_prompt(issue=issue, description=description, url=url).to_messages()) |