Note

    3:03PM Feb 16, 2023

    Speakers:

    Greg Austic

    Keywords:

    tokens

    chat

    understands

    questions

    gpt

    data

    answers

    object

    people

    populate

    good

    replace

    maximum length

    fill

    nuance

    generalized

    models

    set

    text

    character

    I was gonna offer to take notes I don't know. Maybe Maybe you'll be the person to compare to, I guess

    we'll see how good it is. I don't know. All right. Let's do it. So I made a mural board as per usual I'll share it on this channel

    Alright, so I just, you know, I just sort of put what I'm thinking about. I'm totally open. This isn't like a massive group so we can like have some discussions you save Well, it's not a tiny group. I guess. It's getting bigger. So I was going to my plan, I'm open to changes, but I was just going to walk through just like some overview just for anybody who's not familiar of how to use it, and limitations. I think and we can kind of share experiences about what we've learned anybody who's used it what they've learned and I put some of mine as examples. That was the next one. And then how people are using it, like, what problems could be solved with it. How do you want to use it if you haven't tried it yet? sort of similar. And then what are our concerns or like like, and how can we address them? Mostly just an opportunity for everybody to share. And hopefully we can all learn a little bit about what could be useful about this. So that was the thought does that sound reasonable? All right. Let me I'm gonna I'm gonna start and just share my screen hopefully things don't crash

    all right. Everybody see my screen? Alright, so you know first if you haven't used it before, I'm sure you've all heard of it. But that's the main link to use it. You create little conversations like well, I'll just show you I guess the actual interface like over here on the side, you create little chats, and in each chat, you provide information and it it remembers the context you provided. So like you know, you can say my name is John and you can say what is my name and then like that one is a super easy one. Broke Oh, yeah. And that's the other thing if you're not like paying for it then if it has high demand, you won't be able to use it but basically, you can. It's a good example

    here we go. Should I eat breakfast? You know, like asking it questions. That will give you sort of generalized answers, that kind of stuff. But you can also feed it in like data. So and that that is doable in this format. So for example, like, I fed it in a big like, object. JSON object. You can see this as a schema. You know, and I started,

    interrupt. I just got a chat from somebody say, showing me a picture there. It says to successful your work Adventure World is full. Now. Is there a limit on the number of people that can join? Yeah, that might

    be actually I didn't think about that. Okay, yeah. I guess what should we do about that? I guess we can just like create another Jitsi. Any suggestions we could just create another Jitsi and then send an email out to people or we could just let it be. I don't know how many like people are

    interested in how many people are stuck.

    Is it possible to invite people into this Jitsi but not through work of venture.

    I've tried to do it before but I've never been very successful.

    Yeah

    I don't settle isn't a lot of people

    I only know of one. Somebody on our team.

    We can if you want to. Yeah, we can I got there we this is you know our general purpose Jitsi meeting will work. We just have limitations for the number of people who can join work adventure. So yeah, me too. super frustrating. So if you guys want to jump over there, but we have to tell everybody basically we're going to be over there.

    That's fine with me. Let's let's do it. I'll say I'll send a message out on the forums

    and he'll tell us in chat.

    All right that's most folks.

    Alright, I'm gonna share my screen again.

    So, I was just sort of showing like the basic interface. So you can see that you can put in like data objects like this is a this is a JSON schema object. And you can say, Hey, make and make I said make a blank object that adheres to this JSON schema and, and it did actually like it did a good job. So it understands schemas. It can populate things. It can talk to you in a generalized way. It really understands pretty complex language. So this is one interface that you can use. But you can also sign up for in this open AI playground, which is this the platform access thing. And this is cool because it gives you a lot more options. Like they actually have multiple models in here that are like higher and lower quality that allow for more or less data. It's more flexible in how you input the data. And you can define some things like you can actually show the probability of its output at each. Like this is this is an output that it's that it generated and it'll tell me for each character, the likely basically the chance that it was correct, you know, and the thing that chose it'll, it'll highlight, and I'll show you that in a second. It'll highlight like which pieces it thinks is doing well, right and which pieces is thinks it's doing wrong. So, um, so I would suggest this interface and you also get an API key if you sign up for this one. One of the limitations is this maximum length, so your query, basically there's a maximum of 4000 tokens, I think like a piece of text is one token or something or a piece of one p one character and ASCII is four tokens. Maybe or something. So anyway, the total maximum of everything that you put in your input data plus the response is 4000 tokens. So there's a little bit of thoughtfulness there. That you Yes, that's the playground option. Exactly. Yep. So like, what happens is, if I if I set this maximum, this is the maximum length of the response, right. So so I let me show this one because this is just in terms of my, my learning. I think this is important, and I'll put this these these are some of the things that I learned and then we'll just open it up, people can post things, and we can have a discussion. So I want to show my use case. So I took, I had a survey stack survey, this health tracker survey, and it's just like, kind of what you would expect. It's like, How did you sleep? You know, what was the context of the day how many miles you walk, what was your overall anxiety, depression and happiness? You know, what did you eat, all this kind of stuff. You can see it you know, kind of here you know, total quality of sleep on a scale that you wake up what time did you wake up? How many hours Were you awake at night, you know, in addition to that, and then at the end, I made a little script, where I basically like prep this whole thing for chat GPT. So like, I simplify and clean up the submission. And I do that because the more you give to chat GPT the more of these tokens are taking up. So in a perfect world, I would have just handed it the raw submission object, but I wanted to trim it down to use less of those tokens. So I deleted a bunch of unnecessary stuff. And then what I did is I could have asked and I did this before, I could have asked you know fill this thing out basically and would have would have had to recreate the whole thing. So but instead what I did, and I would suggest this for for if you're looking at this and thinking about it from a data perspective.

    I think we just lost your screen. Oh, yeah,

    let me try again. Plus Greg got muted for later on.

    I don't know why that happened. So um, can you see it now? Yeah. So it wasn't right. So I have this big submission object, like I said, but I don't want to take up all of my chat GPT space, write my tokens with stuff it doesn't care about. So what I did is, I know that what I want it to fill in is these value fields. Right? Again, this is our data structure. Yours is gonna be different. But I have like, you know, sleep dot amount dot value. That's the number of hours of sleep sleep dot quality dot value. That's the quality of sleep, right? These value fields is what I want. And in a blank survey, they're set to know like this. So what I did is I went through and I replaced all the value nodes with value, replace zero or replace one replace to replace three, replace four. And then I said, Hey, chat, GPT. Here's a data object, right with my little replace flags in it for the places I want it to replace something. And then I said, Here's me talking, right? This is me, just like blah. Blah, blah, blah, blah, talking about my day, just loose text. And then I said, using the data object above, make a JSON containing the replace values based on the information from the quote, and then don't use any other fields. So I made I told it, basically, I told it, don't use any other fields. So like, don't give me these meta fields write any of that stuff I don't want I just want the value fields don't use any other fields. And also don't return any of the notes fields because it was just populating the notes with like, everything was just like ignore the notes, and then look what it means. Perfect. It's actually not perfect, but it's pretty darn good. So this is basically a restructured version of my data object with the value fields filled in, right wherever I put replace it did a pretty good job. Not all the answers are perfect. And you can kind of if you can ask and see where you know, use it's probably feeling like it's correct or not like clicking on this. But it did a pretty good job. What's really interesting is I can and I'll just show you one, I can do the same thing. So let me delete this. And I'll say instead of making a JSON I'll say make a table containing the replace values don't return any other fields. Okay. So let's see what it does now.

    So there you go. So now it's making it's actually it's making a markdown table, and it's filling them in based on the number of that replace value. So replace 1-234-567-8910 Based on the information from this generalized text input. I did that before and I put it in Markdown just so you could see it is actually valid like markdown table. This is a previous one where I asked it to give me the probability and the second most likely answer. And you can see it did a pretty good job. Again, it's not perfect in all of its data. Like some of the stuff that's guessing it's not quite right. But but it does a pretty good job. So this was my experience beyond just asking it, you know, sort of, like questions I wanted to see could it help me with text input from a user which we all have, you know, we we all users, a lot of times want to just provide generalized text, and then we want to fill out a schema or a data object. So if you're going to do that, to be efficient with chat GPT This is not a bad strategy, this kind of replay strategy, and it seems to do it pretty well based on generalized input. So that's my, that's my sharing. Now, I guess I'll just, if anybody if everybody wants to just like maybe we'll spend a couple minutes, putting in cards, on what you've learned about it. What you feel like you can share and then if people want to pop up and talk about their experience, we can do that. What do you think about that? Maybe just like, two, three minutes to make cards. Oh, Jamie has any idea of these models licensed in a way you could run them yourself? I don't actually know. I do know that. If you pay for the Pro Plan, then you're not limited in those times when the model is overwhelmed. I don't know if that actually exceeds the token size. But that is a pretty significant limitation, right? You couldn't just feed it like Pharmo s and be like, hey, fill it out based on what the user data, but you can feed it chunks.

    I was thinking about where you were showing that. You could select different models to kind of tweak it. Yeah. And those have names that I wondered like those could be found somewhere. I'm sure there's a lot more you have to do to set it up.

    I do think the different they might give you a different like total maximum length maybe maybe not. I don't actually know not sure. You have to look at it. Yeah. Yeah. But there's a lot in here. I'm sure that's modifiable. It's nice. They set it up too. So you can save like your presets, you know, so you can kind of go back and review it. Just yeah. So anyway, I don't know if he knows just spend like two minutes. Like putting in notes on people things that people feel like they've learned if people have used it. That might be interesting. To share with others. I can't play Wordle so yeah, go ahead and feel free if people want to talk while people are writing or if people want to give their own experiences. just unmute I don't I don't have like a particular process here. Who else is played with it? Can someone just like just anybody who's used it in any meaningful way?

    Wow. I'm the only one from this tech group. That's like master this thing.

    So maybe if you have questions, you can stick a note in there and if somebody has an answer or a thought on it you can respond

    One thing to note there's a question just some some discussion about the responses based on probabilities. I want to take that even further and say like, I still sharing my screen. But I when I asked this question of like take this data object and populate it based on this unstructured input. If I save populate it as a table versus populate it as a JSON, or pocket as a simple JSON. If I change the wording a little it'll actually give me different answers. Like in theory, you would think that the answers would always be the same and it's just choosing a different format. But like, that's not how it works. It's just, it's, you know, it's kind of like all in the neural net, you know, so it's if it's going down different paths, it's going to end up with different answers. So that's weird like that.

    I think there's like an appearance of like understanding or like, like, it can output complex structures that make it seem like there's like some sort of like understanding or like, oh, it saw that I wanted to table and so it's giving it knows how to make a table and it's like, no like, it analyzed like a million StackOverflow questions where somebody said something about a table in the question. And then in the results, the like most upvoted answer involves something with a certain structure. And so it correlates those but like, it doesn't you know, it's like

    Yeah, yeah, it's not Yeah, it seems so smart, but it's actually just basically going. Seems like I need today. Seems like I need to see seems like exclamation point. Maybe a space you know, I mean, it's literally character by character. It's wild like it as smart as it is. It has the dumbest process in the universe. It's crazy. It's crazy. But it's also it's also amazing how good it is at pulling complex information out, even with nuance and like, complex grammar basically. All right. Well, I think this has been a Does anyone want to say anything about this? Yeah.

    Sorry. This is just like I asked when you said it's really good at pulling nuanced information out if you enter a really technical like descriptions isn't able to translate it to something that maybe is more easy for a non technology person. That can extract that level of nuanced.

    That's actually I would argue what it's best at. Okay, it's best best function that I've seen so far is just summarization. Basically, it's very, very good at summarizing things, complex information. Yeah. And it's also good at formatting if you say like, I have a friend who is a wastewater engineer, who has to generate reports and he just like, has like, multiple keeps getting muted, but he has he just, he's a wastewater engineer who has to generate a lot of reports, and he has multiple pages of like, technical discussion. And then he's like, generate a report in this style and it's just like you know, creates a very effective first draft. Exactly.

    Yeah. Do you know how I put that question is like, I mean, obviously it has to do with what's being fed in like, is it helpful to like if you put in information around like certain parts of agriculture where we do need nuance language is a good at being able to pull that out and keep it kind of true to how you'd speak like to focus on agriculture.

    That's a good question. You can say, you know, in the style of well, you can give it a sample text and say in the style of this text, and see what it does. Yeah, those are good questions. I will I use it for a very limited set of things. Does anybody else know by the way, it's, it's not a one way conversation.

    I've used it a little bit for similar things. I I agree if you gave it an example, it is very good at imitating that. And if you give it an example of the language that you want, like certain keywords, it'll be good at that. But I have found that like opposed to Dolly, which is image generation, if you tell Dolly, make a Van Gogh or make a dolly painting or whatever it will, it understands that very, very well and can recreate that style. I personally haven't found that chat. GVT is very good. I recreating the style of like, authors or ways of talking. I think it was just so broadly trained, and that maybe they didn't do something in there to understand that because like when I when I have poetry and I'll say, write this like Mary Oliver write this, like someone like that. It produces almost identical texts. It doesn't really understand that nuance, but if you just want something that's like an informal, like communication for the public, where you don't really need really playful, whereas a specific type of language, I think it would be pretty good at that.

    Any other thoughts on that or questions from this? What you've learned? Kind of have you used it extensively? Is there anything else that you feel like you've learned that would be interesting to share?

    Oh, me, I've played I've played it a lot for like very random things. I mean, I think you've covered a lot of it. It is for anyone who hasn't used it. It's definitely shocked me with like, how good it is. But also I agree how dumb it can be sometimes. I'm very useful when you talk to AI II like have to point at certain things or define certain things and be very specific so it understands that appropriately. And you really don't need to do that with Dolly. It has very good like, critical reading skills. But then it will just not only with that chat GBT, but then it will just say totally wrong things or, like give you wrong example sometimes and because it's so good, like 80% of the times. It makes it really hard to know when it's wrong unless you just already know that it's wrong. Like I asked him for a quote one time. And it made up a quote, made up a professor at a university. And I was like, Oh, this is perfect. This is the type of quote I need. And then I went to source it and that professor did not exist. I went to Google Scholar. I looked all over and I was like, Okay, I'm pretty confident this is made up because this person wouldn't be publishable and discoverable. And then the other day, this was a little unethical, but I had to take an IRB test, which is like how to ethically do human research. And it's like 16 It's very long. It took me all day to take the tests. And I was like, I wonder if Chuck GPT could take this test. For me. And I gave it the questions and it very confidently answered them all wrong. So it doesn't like it doesn't alert you when it's wrong. And unless you know that it's wrong, because it's right. So often it's hard to distinguish that.

    Yeah, to second that if you go into the platform view that I was showing before where it shows all like the model details on the side, you can click on each character, it'll tell you the chances that it thinks it's right or wrong. I can't even say that those are very accurate. Honestly, like it's it was very confident that I had peanut butter for dinner, but I didn't have peanut butter. For dinner in the rant I had peanut butter like as a snack, you know what I mean? But it didn't seem to so even its own ability to understand when it's not right is not not ideal.

    Yeah, cuz I think the way it considers rightness is different than like correctness. It's just like, Yes, this is a logical word or character to follow that, but it's not necessarily correct information. Like the quote he gave me was perfect for what I asked it. It was very appropriate but it was false.

    Do you want to speak to what you put in that in the chat is an interesting?