Added persona_tool for generating responses based on persona descriptions via OpenAI API.
This commit is contained in:
@@ -0,0 +1,23 @@
|
|||||||
|
# persona_tool.py
|
||||||
|
|
||||||
|
from base_tool import BaseTool
|
||||||
|
import openai
|
||||||
|
|
||||||
|
class PersonaTool(BaseTool):
|
||||||
|
def generate_response(self, persona_description, query):
|
||||||
|
"""
|
||||||
|
Generates a response based on the persona description using OpenAI API.
|
||||||
|
|
||||||
|
:param persona_description: Description of the persona to be used as a system prompt.
|
||||||
|
:param query: The query to be answered by the persona.
|
||||||
|
:return: Response from OpenAI API.
|
||||||
|
"""
|
||||||
|
# Call OpenAI API with the provided persona and query
|
||||||
|
response = openai.ChatCompletion.create(
|
||||||
|
model="gpt-3.5-turbo",
|
||||||
|
messages=[
|
||||||
|
{"role": "system", "content": persona_description},
|
||||||
|
{"role": "user", "content": query}
|
||||||
|
]
|
||||||
|
)
|
||||||
|
return response.choices[0].message['content']
|
||||||
Reference in New Issue
Block a user