Hi, I just had a crazy idea with ChatGPT as a natural conversation engine capable of triggering OH actions. Well, doesn’t seem too far away, see below, but one thing which I obviously did not get working is a real conversation as you get on the OpenAI website.
I have a working ChatGPT binding and created a new chat channel, nothing weird about that. The issue I have is that every time I command a string to this channel, the chat starts “dumb” without a conversation history, and I would like to know if I missed something, did anything wrong or if it’s not possible.
Here you can see what could be possible with a first prompt (this is from the openAI website):
User
You are an interpreter between a human and a computer. You know the functions of the computer and the corresponding commands, I'll explain that later.
The human will approach you, and your task is to find out which function the human desires. When you found this out, you give the command to the computer.
The computer can turn on the light in the bathroom, the command is BATH_LIGHT_ON.
The computer can turn off the light in the bathroom, the command is BATH_LIGHT_OFF.
The computer can open the blinds in the bathroom, the command is BATH_BLINDS_OPEN.
The computer can close the blinds in the bathroom, the command is BATH_BLINDS_SHUT.
You give a command to the computer by writing the tag <CMD>, followed by the command exactly as described. You answer the human by writing the tag <ANS>, followed by the message to the human. No other tags are allowed.
No computer commands are allowed to be contained in the message to the human. When you gave a command to the computer, inform the human that you did.
From now on you'll wait until a human approaches you.
ChatGPT
<ANS>Hello there! How can I assist you today?
User
Hey!
ChatGPT
<ANS>Hello! How can I help you today? If there's something specific you'd like the computer to do, feel free to let me know.
User
What can you do for me?
ChatGPT
<ANS>I can assist with various functions related to the bathroom. For example, I can turn on the light, turn off the light, open the blinds, or close the blinds. Please let me know which function you'd like to perform.
User
I'd like to turn off the light
ChatGPT
<CMD>BATH_LIGHT_OFF
<ANS>The light in the bathroom has been turned off. Is there anything else you need assistance with?
User
Yes, can you open the blinds?
ChatGPT
<CMD>BATH_BLINDS_OPEN
<ANS>The blinds in the bathroom have been opened. Is there anything else you would like to do?
just imagine what you could do with the ANS and CMD tag by simple string processing in a rule…
Of course, it may fail in rare cases and generate crap, but this as well is nothing too bad for string processing. Of course, don’t use this for (better: don’t even enable it to do) critical or dangerous actions. But for all the rest, this is an incredible and way easy opportunity.
What I observed when I tried this with the binding, I got the same answer for the initial prompt and for the “Hey”, but when I asked it “What can you do for me?”, I get this:
I'm here to assist you with a variety of tasks! Here are some things I can help you with:
Answering Questions: I can provide information on a wide range of topics, explain concepts, and offer insights.
Language Translation: I can translate text between different languages.
Coding Help: If you're working on a programming or coding task, I can help you understand concepts, debug code, or provide examples.
Writing Assistance: Whether you need help with creative writing, essay composition, or general content creation, I can assist you in generating text.
Learning New Topics: I can help you learn new subjects by providing explanations and answering questions.
Problem Solving: If you have a problem or a decision to make, I can offer suggestions and help you think through the issue.
Conversation and Entertainment: If you just want to chat or have some fun, I can engage in casual conversation, tell jokes, or play text-based games.
Remember that while I can provide information and assistance, I don't have real-time capabilities, and my responses are generated based on patterns and information available up to my last training cut-off in January 2022. If you have a specific question or task in mind, feel free to let me know!
…which is the standard reply for this question in a new chat, without any history. With this, all the cool stuff you can think of does not work, so I hope that someone knows how to establish a chat with history there…