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()) |