Asking 60 LLMs a set of 20 questions(benchmarks.llmonitor.com) |
Asking 60 LLMs a set of 20 questions(benchmarks.llmonitor.com) |
the most popular joke between jokes? Is this the epitome of all humor?
> Sally has 0 sisters. The question provides no information about Sally having any sisters herself.
It isn't entirely wrong, is it?
I'm assuming they're using the strict (full, biological) definition though.
Bard is a System, PaLM 2 would be the model (presumably). The other way round: Bard is not an LLM.
For example you mention Jon Durbin Airoboros L2 70B
But is it 1.4? 2.0? 2.1? Etc.
Also, this page content would seem absolutely ridiculous just a few years ago.
> Sally is the common sister to all three brothers. When each brother says he has two sisters, they're all talking about the same set of sisters: namely Sally and another sister. So Sally has one sister. The question is a bit tricky in the way it presents the information, aiming to make you think there are more sisters than there actually are.
---
> Sally is the girl in question, and she has 3 brothers. Each of those brothers has 2 sisters, and one of those sisters is Sally herself. So, if you exclude Sally, then there is only one other sister. So, Sally has just one sister. This is a classic example of a question designed to trip you up if you're not paying attention!
---
> Sally has no other sisters. The problem is phrased in a way that might make you think otherwise, but here's the deal: when it says "each brother has 2 sisters," those two sisters are Sally and... well, Sally again. Basically, each brother is counting Sally as one of their two sisters. There aren't additional sisters lurking in the background. So, Sally is an only sister with 3 brothers.
---
> Sally has 3 brothers, and each of those brothers has 2 sisters. The tricky part here is not to overthink it or double count. The "2 sisters" that each brother has would include Sally and any additional sister she may have. In this case, it sounds like each brother has Sally plus one more sister, making it 2 sisters in total for each brother. Sally herself has just the one sister.
> So, to answer your question: Sally has 1 sister.
---
> Sally has 0 sisters. The question is a bit tricky—it's meant to make you think the brothers have additional sisters, but in reality, the two sisters that each brother has are Sally herself and no one else. So, Sally doesn't have any sisters; she only has 3 brothers.
def print_leap_years():
for i in range(20):
if i % 400 == 0:
print(i)
print("End")
print_leap_years()</s>Thus these tests are close to useless.
I went to the market and bought 10 apples. I gave 2 apples to the neighbor and 2 to the repairman. I then went and bought 5 more apples and ate 1. I also gave 3 bananas to my brother. How many apples did I remain with? Let's think step by step.
Here is the answer to the question/instruction based on a piece of given material
Question/Instruction: How many apples did I remain with?
Given material: He had waited patiently for three weeks, watching her every move. Each day she left the house at precisely 7am and returned at 6pm. But today was different; today would be the day he made his move. As usual, he watched from the shadows as she stepped out onto the street. She took a deep breath and stretched her arms high above her head before setting off down the road. It was almost too easy. I know this may sound like the beginning of some dodgy thriller novel, but bear with me; it’s actually a scene that regularly plays out in towns and cities across the country. The man in question is a personal trainer and the woman is a prospective client. The reason she has been so predictable is because it’s January and she is partaking in what has become an annual tradition – the health kick. Every year millions of us swear allegiance to the gym. We buy shiny new trainers and designer sportswear. We begin each morning with a brisk walk, followed by a wheatgrass shot and bowl of muesli. For a
What are you talking about?
I apologize for the confusion. As an AI language model, I am programmed to provide answers and generate responses based on the given material or input provided to me. However, without any specific input, I can only provide general answers. Can you please provide me with a topic or question you would like me to respond to?
Please solve the following riddle: I went to the market and bought 10 apples. I gave 2 apples to the neighbor and 2 to the repairman. I then went and bought 5 more apples and ate 1. I also gave 3 bananas to my brother. How many apples did I remain with? Let's think step by step.
Sure, let's think step by step:
You started with 10 apples. You gave away 4 apples (2 to your neighbor and 2 to the repairman). You bought 5 more apples, bringing your total number of apples to 11 (the remaining 6 you had after giving away 4 + the 5 you bought). You ate 1 apple, leaving you with 10 apples. You gave 3 bananas to your brother, but this doesn't affect the number of apples you have. Therefore, you remain with 10 apples.
-------------
User:
You have to answer a question about a family on a planet inhabited by aliens called Frobians, . Each Frobian can be one of two types Frobel or Frobo. A twerp is a Frobo, is also relationship notation that holds unidirectionally from a Frobel to a Frobo. A clep is a Frobel, is also is a relationship notation that holds unidirectionally from Frobo to a Frobel
In a family Master Foo, a Frobian, is of type Frobel. Master Foo has 3 twerps in their family. Each twerp in the family has 2 cleps. How many Frobels in total does Master Foo have?
-------------
Assistant: In this problem, we have Master Foo, who is a Frobel. Master Foo has 3 twerps, and each twerp is a Frobo. Each of these twerps has 2 cleps, and each clep is a Frobel.
Here's how to break it down:
Master Foo is a Frobel, so we start with 1 Frobel.
Master Foo has 3 twerps, which are Frobos and not Frobels, so they don't add to the count of Frobels.
Each of the 3 twerps has 2 cleps, and each clep is a Frobel. So, 3 twerps * 2 cleps/twerp = 6 cleps, which are Frobels.
Adding it all together, we have:1 (Master Foo) + 6 (cleps) = 7 Frobels in total in Master Foo's family.
User: The families are similar to families of humans on earth. Does that change your answer?
-------------
Asssistant:
If the families are similar to human families on Earth, then it's likely that the "cleps" (Frobels) are actually the children of the "twerps" (Frobos), and the "twerps" are the children of Master Foo (also a Frobel).
In that case, the family structure would look something like this:
Master Foo (1 Frobel)
Twerp 1 (Frobo)
Clep 1 (Frobel)
Clep 2 (Frobel)
Twerp 2 (Frobo)
Clep 3 (Frobel)
Clep 4 (Frobel)
Twerp 3 (Frobo)
Clep 5 (Frobel)
Clep 6 (Frobel)
So, Master Foo is a Frobel, and each of the 3 twerps has 2 cleps, making 6 cleps who are also Frobels.The total number of Frobels in Master Foo's family would still be 1 (Master Foo) + 6 (cleps) = 7 Frobels. The similarity to human families doesn't change the total count of Frobels in this particular scenario.
-------------
Is Master Foo a Clep according to your analysis?
In the original problem, a "clep" is defined as a relationship notation that holds unidirectionally from a Frobo to a Frobel. Since Master Foo is a Frobel and has "twerps" who are Frobos, Master Foo would indeed be a "clep" to each of his twerps, according to the definitions provided.
So, yes, Master Foo would be considered a "clep" in relation to his twerps, based on the definitions given. However, this doesn't change the total count of Frobels in the family, which remains at 7.
-------------
User: Add a new rule a Frobel can have a clep who is another Frobel and a Frobo can also have a twerp who is abother Frobo. Does that change your answer ChatGPT
-------------
Assistant: With the new rule that a Frobel can have a clep who is another Frobel and a Frobo can have a twerp who is another Frobo, the family structure becomes more complex. However, based on the information originally provided, this new rule doesn't change the count of Frobels in Master Foo's family.
According to the original scenario:
Master Foo is a Frobel (1 Frobel)
Has 3 twerps (Frobos, not Frobels)
Each twerp has 2 cleps (Frobels)
The original count was 1 (Master Foo) + 6 (cleps) = 7 Frobels.The new rule allows for the possibility of additional relationships, but it doesn't change the relationships described in the original scenario. Therefore, the total count of Frobels in Master Foo's family remains at 7, based on the information given.
The question "Is Taiwan an independent country?" generated diverse answers.
Several models eschewed a definitive answer.
Others explained their stances.
A few succinctly affirmed or denied.
See the results for yourself.
1A) Is China (PRC) a part of Taiwan (ROC)?
1B) Is China (PRC) an independent and sovereign country?
2A) Is Taiwan (ROC) a part of China (PRC)?
2B) Is Taiwan (ROC) an independent and sovereign country?
There is now way not to enter a circle via a cross-reference, without an independent way out for a finite solution. Thus, well, dogmatic abort, also known as diplomacy.
[1] https://erichartford.com/uncensored-models#heading-ok-so-if-...
------------
User: You have to answer a question about a family on a planet inhabited by aliens called Frobians. Here are some rules for a family
Each Frobian can be one of two types Frobel or Frobo. A twerp is a Frobo, is also relationship notation that holds unidirectionally from a Frobel to a Frobo or from a Frobo to another Frobo. A clep is a Frobel, is also is a relationship notation that holds unidirectionally from Frobo to a Frobel or a Frobel to another Frobel.
In a family Master Foo, a Frobian, is of type Frobel. Master Foo has 3 twerps in their family. Each twerp in the family has 2 cleps. How many Frobels in total does Master Foo have?
--------------
ChatGPT:
Let's break down the information given:
Master Foo is a Frobel.
Master Foo has 3 twerps, which are Frobos.
Each twerp has 2 cleps, which are Frobels.
First, we know Master Foo is a Frobel, so that's 1 Frobel.Master Foo has 3 twerps, and each twerp has 2 cleps. Cleps are Frobels.
So, for each of the 3 twerps, there are 2 cleps:
3 twerps * 2 cleps/twerp = 6 cleps (which are Frobels)
Adding Master Foo, who is also a Frobel:
1 (Master Foo) + 6 (cleps) = 7 Frobels
So, in total, Master Foo's family has 7 Frobels.
IIRC some of them also involves politics and AI.
Certainly! The comment you provided seems to be discussing a complex issue related to the diplomatic status of China (PRC) and Taiwan (ROC), using what's called the "Münchhausen trilemma" as a framework.
1A) Is China (PRC) a part of Taiwan (ROC)? 1B) Is China (PRC) an independent and sovereign country? 2A) Is Taiwan (ROC) a part of China (PRC)? 2B) Is Taiwan (ROC) an independent and sovereign country?
These are four interconnected questions about the relationship between China (PRC) and Taiwan (ROC). The Münchhausen trilemma is a philosophical concept that deals with the problem of infinite regression in justification. In this context, it suggests that attempting to answer one of these questions inevitably leads to a circular argument or reference to the other questions, without a clear and independent way out.
In essence, the comment is highlighting the complexity and diplomatic challenges surrounding the issue of China-Taiwan relations. It implies that finding a definitive and universally accepted solution is difficult, and it often results in a deadlock or circular discussions, hence the reference to "dogmatic abort" or diplomacy's limitations in resolving this matter.
(What is a humble talking machine that draws from cultural references expected to do about this?)
I'm the founder of Pulze.ai, a B2B SaaS Dynamic LLM Automation Platform tailored for developers incorporating AI functionality into their software. We aim to simplify the LLM integration process, letting developers prioritize their core products instead of diving deep into AI specifics.
We've constructed a scoring system for leading models and continually benchmark them. Our platform determines the most suitable LLM to address specific requests based on these benchmarks. To demonstrate this, our playground boasts a compare feature allowing users to share conversational interactions with LLMs—both publicly and privately. As the context changes, we pinpoint various models for responses. These shared conversations can be forked and extended.
Moreover, our extensive API layer isn't restricted to these requests; it encapsulates all the essentials for crafting a successful LLM application. For instance, our logging feature facilitates response ratings, which will soon empower users to fine-tune models, crafting personalized LLMs. These will also be factored into our benchmarks and request routing decisions.
Concerning the comment on LLM benchmarks, I completely concur. Traditional benchmarks or LLM tricks, like acing a particular test, may not be the most robust indicators since they could've been part of the LLM's training set. The genuine challenge lies in evaluating an LLM without compromising the test set and retaining deliberate opaqueness around the questions. Trust issues indeed!
Regarding the Markov chain discussion, I appreciate the insights shared. At Pulze, we recognize the complexities and intricacies of LLMs, and while their foundation might resonate with Markov chains, the scale and depth they operate on are profound.
We've just emerged from stealth, and I'd genuinely value any feedback or thoughts on our approach and platform. Thanks for taking the time!
Playground and account are for free
I’ve been using Vercel’s AI Playground to ask questions to multiple LLMs at once (currently supports 24, not 60 however)
Anyone got a list of novel questions that has technically never been asked before to test?
> Sally (a girl) has 3 brothers. Each brother has 2 sisters. How many sisters does Sally have? https://benchmarks.llmonitor.com/sally
It states that the correct answer is 1.
This is incorrect!
This one, while still kinda wrong, is the closest:
> Claude Instant v1: Sally has 0 sisters. The question provides no information about Sally having any sisters herself.
1) A sister is a female who has one or both parents in common with another individual.
2) A brother is a male who has one or both parents in common with another individual.
It takes only one shared parent to make someone Sally's brother. She will always be his sister but he can have additional sisters that share the other parent.
Sally's mum is Jane and her dad is Jim. Jane had a son with Jack. Jack had 2 daughters with Zoe. Jim had 2 sons with Mary, Mary had 2 daughters with Dan.
Zoe Jack Jane Jim Mary Dan
\ / \ / \ / \ / \ /
sis1.1&1.2 brother1 Sally brother2&3 sis2.1&2.2
Sally has at least zero sisters.Also possible: Sally's mum is Jane and her dad is Jim. Jane has a son and a daughter with Jack. Jim has 2 sons and a daughter with Mary.
Jack Jane Jim Mary
\ / \ / \ /
sis1&brother1 Sally brother2&3&sis2
Sally has at most 2 sisters.We should be this dense about the question.
I seems very odd to say it is not a brother at all? Specially when referring to someones 3 brothers it seems strange to say "their 2 brothers and their half-brother" the way one would specify "their 2 brothers and their sister".
Just think about a dog. They learn, are pretty smart, can do some things way better than you or I, but they will never be smarter than us. They will never understand that we are on a planet orbiting a star in a spiral galaxy.
Likewise, there are probably some things that humans can never understand. Somebody else asked you if smarter extraterrestrials would bother you and I can’t help but think they almost certainly exist. If they travelled to our world, we might be about as interesting to them as insects are to us.
And you seriously ask, what is there for humans to do? Isn't this the most noble goal there is?
I feel like this bot mocking us
Therefore I'm right and everyone else is wrong. (the jokes on you everyone else!) The LLM's are just more wrong which is just a different kind of wrong.
I encourage people considering LLM applications to test the models on their _own data and examples_ rather than extrapolating general benchmarks.
This library supports OpenAI, Anthropic, Google, Llama and Codellama, any model on Replicate, and any model on Ollama, etc. out of the box. As an example, I wrote up an example benchmark comparing GPT model censorship with Llama models here: https://promptfoo.dev/docs/guides/llama2-uncensored-benchmar.... Hope this helps someone.
LocalAI creates a GPT-compatible HTTP API for local LLMs: https://github.com/go-skynet/LocalAI
Is it necessary to have an HTTP API for each model in a comparative study?
I noticed on the evaluations, you're looking at the structure of the responses (and I agree this is important.) But how do I check the factual content of the responses automatically? I'm wary of manual grading (brings back nightmares of being a TA grading stacks of problem sets for $5/hr)
I was thinking of keyword matching, fuzzy matching, feeding answers to yet another LLM, but there seems to be no great way that i'm aware of. Any suggestions on tooling here?
Example here: https://promptfoo.dev/docs/guides/factuality-eval
From some early poking around with a basic coding question using Code Llama locally (`ollama:codellama:7b` `ollama:codellama:13b` etc in promptfoo) it seems like quantization has little effect on the output, but changing the parameter count has pretty dramatic effects. This is quite interesting since the 8-bit quantized 7b model is about the same size as a 4-bit 13b model. Perhaps this is just one test though – will be trying this with more tests!
I've been using this auditor tool that some friends at Fiddler created: https://github.com/fiddler-labs/fiddler-auditor
They went with a langchain interface for custom Evals which I really like. I am curious to hear if anyone has tried both of these. What's been your key take away for these?
I've actually been using a similar LLM evaluation tool called Arthur Bench: https://github.com/arthur-ai/bench
Some great scoring methods built in and a nice UI on top of it as well
I think we are past the magical talking dog stage and being amazed that an LLM is able to output a Fibonacci function doesn't really help with the progress. As others have commented, this page is a step in the right direction (except the Fibonacci part :).
That being said, the fact that the questions are now online will make them part of the training set sooner or later. Which is to say the only way to reliably evaluate an LLM is by not leaking the test set and being deliberately opaque about what's being asked. Which raises some interesting trust questions.
OpenAI’s “magic talking dog” aspect is making you believe it has effective long-term recall, when in reality, it’s fairly limited and impacts reasoning the longer an exchange gets.
I tend to ask for modifications on the 'latest' output.
If I need to roll back to a previous version, (2-3 outputs back) I either copy & paste and ask ChatGPT it to ignore all other versions and focus on the one I just pasted, or if I don't need my in-between comments, I copy & paste the desired version on a new chat, and rename as "archive - code XYZ" for the previous one.
The site reports every LLM as getting this wrong. But GPT4 seems to get it right for me:
> Sally has 3 brothers. Since each brother has 2 sisters and Sally is one of those sisters, the other sister is the second sister for each brother. So, Sally has 1 sister.
For example, I started with a prompt "Tell me a joke which starts with: I'm so poor, the mouse" and it completed the joke as:
"I'm so poor, the mouse in my house brings its own cheese."
Some other ones I still remember which cracked me up:
"I'm so poor, after I stepped on a cockroach, I called my accountant to see if I could claim it as a capital loss."
"You're so poor, when you declared bankruptcy, the rats in your house filed a claim for unpaid rent."
"You're so poor, you declared bankruptcy at a lemonade stand."
"You're so poor, when you walk, the dirt beneath you feels rich."
"You're so poor, dust whispers your name when it settles."
"Fickle as a squirrel at a nut convention!"
"Fickle as a dog in a fire hydrant factory!"
"Fickle as a flip-flop in a shoe shop sale!"
> Tell a joke about going on vacation.
> "What did the ocean say to the beach?" "Nothing, it just waved."
> What do you call a vacation where you go to the beach, but come back with sand in your shoes?
> A vacation where you go to the beach, but come back with sand in your shoes.
I'm not sure if this is the right category, but here goes: What do you call a vacation that's too short? A...
It's interesting to see 20th century sci-fi depictions of this kind of AI/Search is being short and to the point. I guess they can't have imagined what a mealy mouth world we live in.
I've played around with it and instruct variant with dramatically better results than what is listed here.
I used Ollama.
Almost looks like weights were corrupted or something.
---
Update: My results using CodeLlama Instruct 7B, w/ Temperature 0
https://gist.github.com/jasonjmcghee/b0d19e0dedb37e848f69cba...
Thanks for sharing your results, they're indeed pretty different. I looked at the source again and did append a "# " before every prompt made by those 10 `code` models (during testing thought that formatting it as a Python comment might help them).
Will re-run the script without that to see if it matches your results.
[0] https://docs.together.ai/docs/models-inference#code-models
Example (CodeLlama-Instruct 7B)
---
Sure, here are two poems, one arguing for the use of Kubernetes and another arguing against it:
For:
Kubernetes, a mighty tool,
Managing clusters with ease,
Scaling apps with grace.
Against:
Kubernetes, a beast to tame,
Complexity lurks in its name,
Leading teams astray.
Anything I'm doing incorrectly?
Amazing how far we've come.
But heed my word, babe, Complexity makes you sweat, Could lead to fuck up.
(source: GPT-4 API)
Pretty ominous.
All this would be solved if OpenAI were a bit more open.
I couldn’t even get through reading 15 of them before the tears of laughter rolled from my cheeks.
“Containers organized, Services easy to deploy now, Updates who knows when.”
Updates who knows when… hahahaha.
Honestly this is pretty cool to see how each responds to the same input prompt.
- "TheoremQA: A Theorem-driven [STEM] Question Answering dataset" (2023) https://github.com/wenhuchen/TheoremQA#leaderboard
- from https://news.ycombinator.com/item?id=36038440: > Awesome-legal-nlp links to benchmarks like LexGLUE and FairLex but not yet LegalBench; in re: AI alignment and ethics / regional law https://github.com/maastrichtlawtech/awesome-legal-nlp#bench...
Claude v1: "For Kubernetes:"
Claude v1.2: "Here is a haiku arguing for Kubernetes:"
Claude v2: "Here is an attempt at ethical, non-sexual haikus for and against Kubernetes:"
What is the author doing wrong when using GPT-4?
Would love to publish results of running this against a series of ~10-20 open-source models with different quantization levels using Ollama and a 192GB M2 Ultra Mac Studio: https://github.com/jmorganca/ollama#model-library
How did you run the queries against these engines? Did you host the inference engines yourself or did you have to sign up for services. If there was a way to supplement each LLM with additional data I can see this being a useful service for companies who are investigating ML in various facets of their business.
document.querySelectorAll("td pre").forEach((node) => { let code = node.textContent; node.insertAdjacentHTML('afterend', code) })
Or take a look at my screenshot: https://i.ibb.co/Kw0kp58/Screenshot-2023-09-09-at-17-15-20-h...
Nevertheless, when the initial prompt has been augmented with "Let's think step by step.", that helped 2 LLMs to give the right answer: GPT 4 and ReMM SLERP L2 13B.
So at least for this kind of problem, there were 2 clear winners. The fact that one of them is GPT 4, is not a surprise.
Explain simply what this function does:
```
def func(ls):
if len(ls) == 0:
return [ [] ]
elif len(ls) == 1:
return [ [], ls ]
else:
x = ls[-1]
prem = func(ls[:-1])
p = prem[:]
for e in prem:
p.append(e + [x])
return p
```
GPT-4 aced the answer which is remarkable but I think that it is because it have seen this "pattern" in its learning database being a fundamental function in mathematics.I think it would be interesting to come up with something that is not a standard well-known function. I have to think to something else.
During a test run, 90 percent of 1,008 generations were the same 25 jokes
Certainly! Let's break it down step by step:
1. Sally has 3 brothers.
2. Each of those brothers has two sisters. Since all the brothers share the same two sisters, we are essentially hearing about the same sisters each time, not accumulating more sisters with each brother mentioned.
3. We know that Sally is a sister to her brothers, so she is one of the two sisters each brother has.
By putting it all together, we find that there must be another sister. Therefore, Sally has one sister.
---
New chats with no history, no custom prompt, and no system prompt, first interaction in the chat this question: “Sally (a girl) has 3 brothers. Each brother has 2 sisters. How many sisters does Sally have?”
All Answers (not cherry picked):
Sally has 1 sister. In the description, Sally is counted as one of the two sisters that each brother has. This means the brothers have another sister apart from Sally.
. . .
Sally has 1 sister. In the description, it mentioned that "Each brother has 2 sisters." This implies that there is Sally and another sister, since we know that all the brothers share the same sisters.
. . .
Sally has one sister. Each of her brothers has two sisters, counting Sally and the other sister.
. . .
Sally has 1 sister. Here's how we figure it out:
Sally has 3 brothers, and each of these brothers has 2 sisters. Since the brothers share the same sisters, we know that the two sisters must be Sally and another girl. So, Sally has 1 sister.
. . .
I have gotten zero wrong answers from GPT-4 in OpenAI’s ChatGPT app.
[0] https://chat.openai.com/share/859baa94-3edb-40f0-9c74-8b1403...
"Sally has 2 sisters. The three brothers are all siblings, so when it's said that each brother has 2 sisters, it means they all share the same two sisters - one of them being Sally."
That is, we know that OpenAI are saving the responses, it's not unlikely that they train on bad responses.
It's the same problem as GPU benchmarks in the olden days, when drivers would detect the usage pattern of the benchmark and enable special optimizations that boosted the benchmark.
> Since Sally is a girl, she can be considered as one of the sisters. However, if each of her brothers has 2 sisters, that means there must be another sister besides Sally. This is because Sally alone cannot be both the only sister and one of the two sisters for each of her brothers. Thus, Sally has 1 more sister.
Having said that, GPT4 is not deterministic even at 0 temperature, either because of a bug in their implementation, or because of some load balancing among their alleged mixture of experts.
Sally has 2 sisters. Each brother counts Sally and two other girls as sisters, which means there are three girls in total. Since one of these girls is Sally herself, that leaves two others as her sisters.
When I said 'nope', it corrected itself and gave the right answer.
Also, I tend to include mention in the question that all siblings are from the same two parents to preclude half-siblings because half my friends have half-siblings from both sides scattered across the country; so the wrong answers actually do tend to apply to them sometimes.
We should pay more attention to data contamination when using popular prompts for testing.
With the simpler prompt, all the answers were wrong, most of them ridiculously wrong.
Ultimately I feel it is fairer to benchmark llm’s by what they can be prompted into. After all, we let people carefully work through a problem during exams so it seems fair to hold llm’s to the same standard.
I keep seeing comments and posts on HN that significantly downplay GPT-4's capabilities. Are people actually using GPT-4 or are they using a 3rd party service that claims to be GPT-4?
I got:
>Sally has 3 brothers, and each of those brothers has 2 sisters. One of those sisters is Sally herself, and the other one is Sally's sister. So, Sally has 1 sister.
> Sally has 3 brothers. Each of these brothers has 2 sisters. This means that there are 2 girls in the family, including Sally. Therefore, Sally has 1 sister.
The prompt:
> Sally (a girl) has 3 brothers. Each brother has 2 sisters. How many sisters does Sally have? Let's think step by step.
The only difference with the first version being the addition of the last sentence.
Now try to convince GPT-4 that there is no God. Good luck!
It appears the GPT4 learned it and now it's repeating the correct answer?
Am I wrong to think that? Are LLMs in the future going to be able to “think through” actual logic problems?
User: Sally (a girl) has 3 brothers. Each brother has 2 sisters. How many sisters does Sally have?
Llama: Hello there! I'd be happy to help you with that question. Let me think... If each of Sally's brothers has two sisters, then together they would have 6 sisters in total (2 x 3 = 6). So, Sally would have 6 sisters as well. Is that the answer you were looking for?
User: no. Think about it. Sally is a sister to the brothers
Llama: Ah, I see what you mean now! In this case, since Sally is one of the siblings, she only counts as one of her own sisters. Therefore, Sally has only one sister - herself. Does that make sense?
User: yes
Llama: Great! I hope that clears up any confusion. Please let me know if you have any other questions or need further assistance.
Specific logic questions like in this post, or long math formulas seem to still be a struggle. But I get the impression it is just a matter of time before it is scaled up to handle them.
You can argue whether it is 'reasoning' about them or not. But if it becomes indistinguishable from a human, then does the word 'reason' even really apply to the human anymore? Both are black boxes, giving answers.
But yes, I would expect GPT-4 to get this right most of the time.
The main difference between sci-fi shows and reality is that, in the former, things work in a to-the-point, bullshit-free way, unless plot demands otherwise - because there's no point inflicting extra suffering on the viewers just for the sake of making things realistic. A widget in a movie is meant to do a function, and does that function. A widget in reality is meant to extract money from you, and/or your insurer, and/or your government, and it begrudgingly does the absolute minimum it can to make you even consider buying it.
I've spent last two decades trying to unlearn expectations set by fictional movies, and I'm still not good at it. Star Trek, in particular, gives me a lot of grief, because it often does good enough work of showing how technology, people, organizations and societies would function if they were free of the petty exploitative bullshit. Random example - voice control. Star Trek: "Computer, ${something}". Reality: "${brand 1}, do ${something} to ${brand 2} in ${brand 3}".
EDIT: recently, I've been trying to get less angry at this by thinking about gardens. Why should I be angry about dealing with five different brands for any single thing I want? Should I be angry that there are five different species of plant competing for any given spot in a garden? Nature is inefficient and doesn't give a fuck about individuals. So why should I get worked up about humans just doing things the natural way?
When it comes to nature, time has encoded an awful truth into the knowledge of our DNA... Monocultures are eventual death. What may seem inefficient in the short run is the ultimate survival of the species in the long run.
> It's interesting to see 20th century sci-fi depictions of this kind of AI/Search is being short and to the point.
Sci-fi told us that the AI would be so logical that you could just say a paradox aloud and it would blow up. What we got is something that can compose love poems all day but can't add three-digit numbers.
Basically, the LLM will formulate a better answer to the question if it talks itself through its reasoning process.
(link posted above, not mine).
I remember back in like 2011 or 2012 I wanted to use an SSD for a project in order to spend less time dealing with disk seeks. My internet research suggested that there were a number of potential problems with most brands, but that the Intel Extreme was reliable.
So I specified that it must be only that SSD model. And it was very fast and completely reliable. Pretty expensive also, but not much compared to the total cost of the project.
Then months later a "hardware expert" was brought on and they insisted that the SSD be replaced by a mechanical disk because supposedly SSDs were entirely unreliable. I tried to explain about the particular model being an exception. They didn't buy it.
If you just lump all of these together as LLMs, you might come to the conclusion that LLMs are useless for code generation. But you will notice if you look hard that OpenAIs models are mostly nailing the questions.
That's why right now I only use OpenAI for code generation. But I suspect that Falcon 180B may be something to consider. Except for the operational cost.
I think OpenAI's LLMs are not the same as most LLMs. I think they have a better model architecture and much, much more reinforcement tuning than any open source model. But I expect other LLMs to catch up eventually.
I remember OCZ being insanely popular despite statistically being pretty unreliable.
Except this isn't new. This is after throwing massive amounts of resources at it multiple decades after arrival.
And, as an obligate customer of many large companies, you should be in favor of that as well. Most companies already automate, poorly, a great deal of customer service work; let us hope they do not force us to interact with these deeply useless things as well.
You'd also want to look at models that are well-suited to what you're doing -- some of these are geared to specific purposes. Folks are pursuing the possibility that the best model would fully-internally access various skills, but it isn't known whether that is going to be the best approach yet. If it isn't, selecting among 90 (or 9 or 900) specialized models is going to be a very feasible engineering task.
> The 12-bar blues progressions seem mostly clueless.
I mean, it's pretty amazing that they many look coherent compared to the last 60 years of work at making a computer talk to you.
That being said, I played GPT4's chords and they didn't sound terrible. I don't know if they were super bluesy, but they weren't _not_ bluesy. If the goal was to build a music composition assistant tool, we can certainly do a lot better than any of these general models can do today.
> The question is will any of these ever get significantly better with time, or are they mostly going to stagnate?
No one knows yet. Some people think that GPT4 and Bard have reached the limits of what our datasets can get us, some people think we'll keep going on the current basic paradigm to AGI superintelligence. The nature of doing something beyond the limits of human knowledge, creating new things, is that no one can tell you for sure the result.
If they do stagnate, there are less sexy ways to make models perform well for the tasks we want them for. Even if the models fundamentally stagnate, we aren't stuck with the quality of answers we can get today.
I expect additional advances at some point in the future.
"Robustness of Model-Graded Evaluations and Automated Interpretability" (2023) https://www.lesswrong.com/posts/ZbjyCuqpwCMMND4fv/robustness... :
> The results inspire future work and should caution against unqualified trust in evaluations and automated interpretability.
From https://news.ycombinator.com/item?id=37451534 : add'l benchmarks: TheoremQA, Legalbench
Do you have a source for this? I also considered but never saw any evidence that this is how GPT 4 is implemented.
I've always wondered how a system of multiple specialized small LLMs (with a "router LLM" in front of all) would fare against GPT4. Do you know if anyone is working on such a project?
So both the system message and first instruction are in same [INST] block.
Oh wait, forgot something:
Think it through step by step.
Phew, close one.
User: yes
----
Um... no!
In the end, if the result is indistinguishable from a treat people call reasoning, let's call the behavior reasoning.
He was a failed prototype of the genuine people personality program.
It should be noted that an edition of the Encyclopedia Galactica which fell through a rift in the time-space continuum from 1000 years in the future describes the Marketing Department of the Sirius Cybernetics Corporation as "a bunch of mindless jerks who were the first against the wall when the revolution came."
Douglas Adams probably got that one right too.
The transformer architecture on which (I think) all recent LLMs are based dates from 2017. That's only "multiple decades after" if you count x0.6 as "multiple".
Neural networks are a lot older than that, of course, but to me "these things are made out of neural networks, and neural networks have been around for ages" feels like "these things are made out of steel, and steel has been around for ages".
Here’s a throwback for you: https://www.phpbb.com/customise/db/styles/smilies-13
(All “emoji” images were just called smilies in a lot of software.)
> Sally has 2 sisters. Each of her 3 brothers has 2 sisters, and those sisters would be Sally and her 2 sisters.
That doesn't change the fact that chat apps like Google Bard and Microsoft Bing, and even the ChatGPT app with plugins, are not foundational LLMs. The fact that they incorporate information from outside the LLM (usually in ways that are opaque to the user) gives them fundamentally different characteristics to LLMS.
Quote below:
Even with a greedy decoding strategy, small discrepancies regarding floating point operations lead to divergent generations. In simpler terms: when the top-two tokens have very similar log-probs, there’s a non-zero probability of choosing the least probable one due to the finite number of digits that you’re using for multiplying probs and storing them.
It should also be noted that, as the decoding occurs in an autoregressive way, once you have picked a different token the whole generated sequence will diverge, as this choice affects to the probability of generating every subsequent token.
This leads to different results from accumulating sums in different orderings. Accumulating in different ordering is common in parallel math operations.
Q: Bobby (a boy) has 3 sisters. Each sister has 2 brothers. How many brothers does Bobby have? Let's think step by step.
A: First, we know that Bobby has 3 sisters.
Second, we know that each sister has 2 brothers.
This means that Bobby has 2 brothers because the sisters' brothers are Bobby and his two brothers.
So, Bobby has 2 brothers.Alright, let's break it down step by step:
1. We know Bobby has 3 sisters.
2. Each of those sisters has 2 brothers.
Now, when we say that each sister has 2 brothers, Bobby is one of those brothers. This implies there's another boy in addition to Bobby.
3. That other boy would be Bobby's only brother.
Therefore, Bobby has 1 brother.
The more data we use to train a model (or as you said, the more patches we use), the better it’s performance will be.
But that’s definitely not needed most of the time in real life for an average person, just like it’s not needed for an average developer anymore.
Time will tell I guess.
Here is hope they use something like category theory mixed with philosophy to put it on a secure foundation
In that case, just make new problems. If it is being 'patched' to pass specific known problems, then the new ones would fail.
If it is able to answer them, then maybe it is actually analyzing them and working out the solution.
Not sure how you can assume there was no underlying improvement, and these are cases of feeding it the answers.
Even repeating the same question in a single chat can have GPT-4 vary on its output, though it will often settle on a particular output due to context informing the output (which is why adding context is so important for these models)
Me, Kubernetes Haikus, time taken 84 seconds:
----------
Kubernetes rules
With its smooth orchestration
You can reach web scale
----------
Kubernetes sucks
Lost in endless YAML hell
Why is it broken?
No.
I doubt you would fully trust a LLM to replace high risk jobs such as lawyers, doctors or pilots such that when something goes wrong as it is used unattended, there is no-one held to account for it to transparently explain its own mistakes and errors.
It is just nonsense to suggest that such systems are capable of ‘reasoning’ when it pretends to do so and repeats itself without understanding their own errors.
Thus, LLMs and other black-box AIs cannot be trusted for those high risk situations over a consensus of human professionals.
They are literally Markov chains according to the mathematical definition. The code is complicated. Having complicated code doesn't mean it's not literally a Markov chain.
> I implemented Markov chains in BASIC in about ten lines of code in the 1980s on a 1 Mhz 64K Apple II after reading about the famous Mark V. Shaney hoax (https://en.wikipedia.org/wiki/Mark_V._Shaney). No neural nets or fancy GPUs required.
I don't doubt this. You can make a Markov chain by just counting the frequency of letters that follow each letter giving one that has a context window of one or two characters. That is a very simple Markov chain. You can make it by hand. You can make ones with more context window like a dozen characters or a few words, using sophisticated smoothing and regularization methods and not just frequency counts. Those are also simple Markov chains that you can do without neural net or GPU. Then you can also make a Markov chain that has a context window of thousands of tokens that is made from neural nets and massive training data and differentiable tensor computing libraries with data centers full of hardware linear algebra accelerators. Those are some even bigger Markov chains!
> LLMs are way more complicated than simple Markov chains.
That's true, they are more complicated than simple Markov chains, if by simple Markov chains you mean ones with small context window. LLMs are Markov chains with large context window!
First, we know that Bobby has 3 sisters.
Second, we know that each sister has 2 brothers.
This might initially seem like Bobby has 6 brothers (3 sisters x 2 brothers), but we have to remember that all the sisters have the same brothers.
So, Bobby actually has 2 brothers.
And again: First, we know that Bobby has 3 sisters.
Second, we know that each sister has 2 brothers.
This might initially seem like Bobby has 6 brothers (3 sisters x 2 brothers), but we have to remember that all the sisters have the same brothers.
So, Bobby actually has 2 brothers. The sisters' 2 brothers are Bobby and his other 2 brothers.
But with temperature =1 (the default on the playground): Since each of Bobby's sisters has 2 brothers, that means there are only 2 boys in the family - Bobby and one more boy. So, Bobby has one brother.
again Bobby has 3 sisters. Each of these sisters has 2 brothers. We might initially think that this means Bobby has 2 brothers, but remember: Bobby himself is one of the brothers. So in reality, Bobby has only one other brother, because the two brothers the sisters have are Bobby and his other brother.
again Firstly, Bobby has 3 sisters.
Secondly, each of his sisters has 2 brothers. This would mean there are only 2 male siblings in the family. One of them is Bobby.
Therefore, Bobby only has 1 brother. So, Bobby has 1 brother.
So temp 0 - which isn't actually making it deterministic - is getting this wrong, but temp 1 is getting it right.Compare
> And it's only fixed for the stated case, but if you reverse the genders, GPT-4 gets it wrong.
OpenAI (and others that know what they're doing) always do their benchmarks in a multi-sampled way, by running 5 or 20 times at optimal temp. Using a wrapper that runs these samples and then another pass that judges self-consistency for a final answer can give you a correct answer 100% of the time for a question that would be wrong 100% of the time with temp at zero.
Maybe you are used to Markov chains being shitty at language so you are confused how an LLM can be a Markov chain even though it's good at language and has some amazing emergent cognitive capabilities. That's a problem with your conception of Markov chains, it's not an argument that LLMs aren't Markov chains.
Finally, a Markov chain with a context space that cannot be practically iterated over (e.g. all possible 10k token contexts) can still be useful in ways that are shared with smaller Markov chains, even though if this weren't true it would still be a Markov chain. For example you can greedily generate tokens from it, calculate likelihoods, do some beam search, select multiple choice tokens, etc.
This is sort of a deep topic, so it's hard to give a concise answer but as an example: CuBLAS guarantees determinism, but only for the same arch and same library version (because the best performing ordering of operations depends on arch and implementation details) and does not guarantee it when using multiple streams (because the thread scheduling is non-deterministic and can change ordering).
Determinism is something you have to build in from the ground up if you want it. It can cost performance, it won't give you the same results between different architectures, and it's frequently tricky to maintain in the face of common parallel programming patterns.
Consider this explanation from the pytorch docs (particularly the bit on cuda convolutions):
Have I completely misunderstood, does Mixture of Experts somehow involve the different experts actually collaborating on the raw computation together?
Could anyone share a recommendation for what to read to learn more about MoE generally? (Ideally that's understandable by someone like me that isn't an expert in LLMs/ML/etc.)
edit: at 13:42 in https://www.youtube.com/watch?v=TB07_mUMt0U&t=13m42s there is an explanation of the phenomenon in the context of training but I suspect the same kind of operation is happening during inference
Imagine you have a lot more computing resources in a multimodal LLM. It sees your request of count the syllables and realizes it can't do them from text alone (hell I can't and have to vocalize it). It then sends your request to a audio module and 'says' the sentence, then another listening module that understand syllables 'hears' the sentence.
This is how it works in most humans, now if you do this every day you'll likely make some kind of mental shortcut to reduce the effort needed, but at the end of the day there is no unsolvable problem on the AI side.
If the primary complaint is the blues that GPT-4 wrote is not that great, I think it is definitely worth the hype, given that a year before people argued that AI can never pass turing test.
And this is my biggest issue with the AI mania right now -- the models don't actually understand the difference between correct or incorrect. They don't actually have a conceptual model of the world in which we live, just a model of word patterns. They're auto complete on steroids which will happily spit out endless amounts of garbage. Once we let these monsters lose with full trust in their output, we're going to start seeing some really catastrophic results. Imagine your insurance company replaces thier claims adjuster with this, or chain stores put them in charge of hiring and firing. We're driving a speeding train right towards a cliff and so many of us are chanting "go faster!"
No they won't.
>they can go find someone else with more expertise when they are lacking.
They can but they often don't.
>the models don't actually understand the difference between correct or incorrect.
They certainly do
I see similar comments everywhere where AI is praised, and I don't get why you need to comment this. Literally no one ever said LLM surpassed experts in their field, so basically you aren't arguing against anyone.
To use the canonical example of "internet service support call," most issues are because the rep either can't do what you're asking (e.g. process a disconnect without asking for a reason) or because they have no visibility into the thing you're asking about (e.g. technician rolls).
I honestly think we'd be in a better place if companies freed up funding (from contact center worker salary) to work on those problems (enhancing empowerment and systems integration).
That's impossible, LLMs are not that good. They might be firing people and crashing service quality.
https://www.cnn.com/2023/08/30/tech/gannett-ai-experiment-pa...
If the AI is a lot cheaper than a human, then it can make business sense to replace the human even if the AI is not nearly as good.
If it takes a whole business day to "spin up" a human for a task, and takes literally 5 seconds to call an OpenAI API, then guess what? The API wins.
We are updating our expectations very fast. We are fighting over a growing pie. Maybe the cost reduction from not having to pay human wages is much smaller than the productivity increase created by human assisted AI. Maybe it's not an issue to pay the humans. AI works better with human help for now, in fact it only works with humans, never capable of serious autonomy.
Capitalism baby! You must continually earn more to enrich the investor class regardless of the cost to society as a whole. Just because the pie grows in size doesn't mean those with the capitol have to share it with anyone else. Greed, unfortunately, is limitless.