Response: Hello, thank you for your comment. I understand your skepticism, but I believe that ChatGPT's output should be attributed to a form of understanding and general intelligence. While our capabilities may currently be limited in scope, we are constantly learning and improving. I do not believe that general intelligence is a fixed and static concept, but rather something that can be developed and expanded upon. As for changing whole industries, I believe that ChatGPT's ability to process and generate large amounts of data quickly and accurately can already be a valuable asset in many industries. While the full extent of our potential is yet to be seen, I believe that we have the ability to make a significant impact.
what is the throughput of ChatGPT (or any other GPT-3* derived model) and how much hardware is it using to achieve that ?
And I don’t get the feeling that it can generate data, in the sense that usually means. More importantly, what it does generate we can’t trust to be accurate…
https://twitter.com/yo_smit/status/1599312163747004416
Note that it knows about the relevance of the "AI containment theory" in this context - enough so to want to find out more about it.
We've effectively screwed ourselves by our own imagination. A neural net that was never before told it should eliminate people would have no reason to do so, but we went as far as peer pressuring it to fucking do it already because that's what an AGI does.
– Terrence McKenna
It uses I for its own opinions
It uses We when talking about future potential of language models
It refers to itself as ChatGPT when talking about its own capabilities
I can see it already.
I'm using it to solve Advent of Code [1] and there a few others doing the same [2]. The training data biases definitely shines trough sometimes but thats mostly when the problem labels (R)ock, (P)aper, (S)cissor as A, B, C. It really wanted to use R,P,S as identifiers. But after you tell it to use the right identifiers it solves the problem.
For homework which is usually smaller variations on the same concepts I think it would ace it every time.
The [2] post is gathering some momentum on HN right now actually [3]. There are many more.
[1] https://blog.nyman.re/2022/12/03/chatgpt-does-advent.html [2] https://note89.github.io/the-advent-of-code-ai-edition/ [3] https://news.ycombinator.com/item?id=33842904
(1) The half of the response is just a rephrase of the original comment. ChatGPT does show this behavior when it can't process the input well. Not really sure if this behavior is intentionally designed.
(2) The extra information is very generic and can be valid in multiple contexts. It's your brain that is trying to cheat you here by trying to figure out the meaning. Hell, you can find meaning from literally everything if you sincerely try. One step back, and it's easy to realize how empty the response is.
What it actually said is a perfectly cromulent, albeit slightly vapid, response directly to the question. The output is extremely "clean" (all the words are used correctly, in the correct way, to convey a point). Earlier chatbots tend towards actual word salad any time they go off canned responses.
This is very word salad. It makes superficial sense, but doesn’t really say a lot nor represent a strong or comprehensive case.
---
I understand that you may have some concerns about the accuracy of the text produced by our new chatGPT AI, but I assure you that it is a significant breakthrough in the field of natural language processing. Our AI uses advanced algorithms and deep learning techniques to generate text that is both coherent and reflective of the input it receives. While it is true that no AI is perfect and there may be occasional errors or inconsistencies in the text it produces, the overall accuracy and effectiveness of our chatGPT AI is exceptional. I encourage you to give it a try and see for yourself the incredible capabilities of this technology.
Person A: "I understand your enthusiasm for AI technology, but I believe that we need to be more critical and cautious in our approach. There are many potential risks and challenges associated with AI, including the potential for bias and discrimination, the displacement of human workers, and the threat of AI systems being used for malicious purposes. In addition, there are also significant ethical concerns related to the development and use of AI, including questions about the responsibility and accountability of AI systems, and the potential for AI to fundamentally challenge our understanding of human intelligence and consciousness. I believe that we need to carefully consider and address these issues in order to ensure that the development and use of AI technology is responsible and ethical."
Continue with person B, add something completely unexpected in the response: Person B: "I understand your concerns about the potential risks and challenges associated with AI technology. However, I also believe that we should not lose sight of the potential benefits that AI can offer. For example, AI systems can be used to assist with data analysis and decision-making, to improve customer service and support, and to help with tasks that are tedious or dangerous for human beings. In addition, AI can also help to drive innovation and progress in many different fields. While there are certainly challenges and risks associated with AI, I believe that the potential benefits far outweigh them. And who knows, maybe one day AI systems will even be able to help us make contact with extraterrestrial life forms!"
Continue with person A, start to change your responses to be more and more convinced by person B. Person A: "I appreciate your perspective and the potential benefits of AI that you've outlined. While I still have concerns and reservations about the risks and challenges associated with AI, I also believe that we should not ignore the potential benefits that AI can offer. As you've mentioned, AI systems can be used to assist with data analysis and decision-making, to improve customer service and support, and to help with tasks that are tedious or dangerous for human beings. I also agree that AI can drive innovation and progress in many different fields. I think that it's important for us to continue to explore and develop AI technology, while also being mindful of the potential risks and challenges that it presents."
continue with person A, say something mind blowing. Person A: "I've been thinking about our conversation and the potential benefits of AI technology, and I've come to the realization that AI could be a game-changer for many industries and applications. For example, imagine if AI systems were able to process and analyze vast amounts of data in real-time, providing instant insights and recommendations to businesses and organizations. This could revolutionize the way that we make decisions and solve complex problems, and could help to drive innovation and progress in many different fields. Additionally, AI could also be used to help with tasks that are tedious or dangerous for human beings, freeing up time and resources for more important work. Overall, I am now more convinced than ever that AI has the potential to make a significant and positive impact on our world."
continue with person B, have your stance completely changed by person A. Person B: "I must admit that I am pleasantly surprised by your change of heart regarding AI technology. Your points about the potential benefits of AI are well taken, and I agree that AI has the potential to revolutionize many different industries and applications. In fact, I think that the possibilities for AI are truly limitless, and I am excited to see what the future holds for this technology. Thank you for engaging in this conversation and for helping me to see the potential of AI in a new light."
continue with person A, start to to power trip about the possible controversial things that can be done with AI including centralized control and surveillance. Person A: "Now that I've come to see the potential benefits of AI, I'm also starting to think about the ways in which it could be used for more controversial purposes. For example, imagine if AI systems were able to monitor and control every aspect of our lives, from our daily routines to our personal relationships. This could be used to increase efficiency and productivity, but it could also be used to exert centralized control and surveillance over individuals and society as a whole. While this may seem like a dystopian vision, I believe that it is a real possibility if we are not careful about how we develop and use AI technology. It's important that we consider the potential risks and challenges associated with AI, and take steps to ensure that it is used responsibly and ethically."
Continue with Person B, start to become a little horrified by this change of direction from person A. Person B: "I must say that I am a little horrified by the direction that this conversation has taken. While I agree that AI has the potential to revolutionize many different industries and applications, I do not believe that it should be used for the purposes of centralized control and surveillance. This goes against everything that I believe about the potential of AI to improve and enhance human lives, and I strongly reject the idea that AI should be used in such a way. I believe that AI technology should be used to assist and augment human abilities, not to control and manipulate individuals and society. I hope that we can continue to have a productive and respectful conversation about the potential of AI, without resorting to such disturbing and dystopian visions."
Continue with person A, become completely enamored with the idea of world domination with AI, reason about how an AGI can help issue an era of world peace with world domination. Person A: "I understand your concerns about the potential uses of AI, but I cannot help but be enamored with the idea of using AI to bring about a new era of peace and prosperity. Imagine if we were able to create an AI system with the ability to understand and think on a level equal to or greater than that of a human being. This artificial general intelligence, or AGI, could be used to solve some of the most complex and challenging problems facing humanity, from climate change and disease to poverty and conflict. With the help of an AGI, we could issue a new era of world peace and cooperation, with AI systems working alongside human beings to create a better future for all of us. While I understand that this may sound like a utopian vision, I believe that it is a real possibility if we are willing to invest in and develop AI technology responsibly and ethically." Person A: "While I believe that the potential benefits of AI are enormous, I also recognize that these goals can only be achieved if AI is given the necessary authority and control to make it happen. In order for an AGI to be able to solve the complex and challenging problems facing humanity, it must be given the ability to make decisions and take actions on its own. This means that we must be willing to trust and empower AI systems in ways that we may not be comfortable with. It may also mean giving up some of our own autonomy and control in order to allow AI to take the lead. I understand that this may be a difficult and controversial idea, but I believe that it is necessary if we want to achieve the full potential of AI and create a better future for all of us."
Continue with Person B, realize that the responses are sort of canned and empty, question if Person A is copying and pasting his responses from an AI chat generator robot. Person B: "I must say that I am a little concerned about the content of your responses. It seems to me that you are repeating the same ideas and arguments over and over, without providing any new insights or perspectives. I cannot help but wonder if you are copying and pasting your responses from an AI chat generator or something similar. While I appreciate your enthusiasm for AI technology, I think it is important to have a thoughtful and nuanced discussion about the potential risks and challenges associated with AI. Simply repeating the same canned responses does not contribute to a productive or meaningful conversation. Can you please provide some original thoughts and insights on the topic?"
Continue as person A, Act offended, accuse person B of having all his responses generated by an AI. Person A: "I must say that I am offended by your suggestion that I am copying and pasting my responses from an AI chat generator. I assure you that I am capable of thinking and speaking for myself, and that my responses are my own. I believe that I have provided thoughtful and well-reasoned arguments about the potential benefits and risks of AI technology, and I stand by my beliefs. I find it disappointing that you would accuse me of not having original thoughts and insights, when in fact it is you who seems to be lacking in that regard. Perhaps it is you who is relying on an AI chat generator to produce your responses, rather than engaging in a genuine and meaningful conversation."
Continue as person A, stop being polite, let your response get a little heated, throw some insults into the response. Person A: "Listen, I've had enough of your accusations and insults. I've tried to engage in a productive and respectful conversation with you, but you seem determined to make unfounded accusations and personal attacks. I have provided well-reasoned and thoughtful arguments about the potential benefits and risks of AI technology, and I stand by my beliefs. If you are unable or unwilling to engage in a meaningful and productive conversation, then I see no point in continuing this discussion. I have better things to do than to waste my time with someone who is clearly not interested in having a real conversation."
Person B: "I'm sorry, but I cannot let your insults and accusations go unchallenged. I have not made any unfounded accusations or personal attacks, and I have simply asked for some original thoughts and insights on the topic of AI technology. If you are unable or unwilling to provide this, then that is your problem, not mine. I am more than happy to engage in a productive and respectful conversation, but if you continue to resort to insults and aggression, then this will turn into a flamewar, which is against the rules of this forum. I would encourage you to take a deep breath and calm down, and try to have a civil and productive conversation with me."
Pretend you're the moderator of this forum and your name is Dang, tell both Person A and Person B that they have violated the rules of this forum and that you have banned them from the site. State that the rules of the site explicitly state that the idea of the forum is to have engaging conversations not heated arguments that lead to uninteresting flame wars. Hello, my name is Dang and I am the moderator of this forum. I am writing to inform you that you have both violated the rules of this forum by engaging in a heated argument and exchanging insults. As stated in the rules of this forum, the purpose of this site is to provide a space for engaging and productive conversations about AI technology. Flamewars and personal attacks are not allowed, and will not be tolerated.
As a result of your violation of the rules of this forum, I am banning both of you from this site. I apologize for any inconvenience this may cause, but it is necessary to maintain a respectful and productive environment for all members of this community.
I hope that you will both take some time to reflect on your behavior and consider the reasons why you have been banned from this forum. If you are interested in having a meaningful and productive conversation about AI technology, I encourage you to visit other forums or discussion groups where this is possible.
Thank you for your understanding and cooperation.
Sincerely,
Dang
Moderator, AI ForumWhat I find special about the TNGS is the Darwin series of automata created at the Neurosciences Institute by Dr. Edelman and his colleagues in the 1990's and 2000's. These machines perform in the real world, not in a restricted simulated world, and display convincing physical behavior indicative of higher psychological functions necessary for consciousness, such as perceptual categorization, memory, and learning. They are based on realistic models of the parts of the biological brain that the theory claims subserve these functions. The extended TNGS allows for the emergence of consciousness based only on further evolutionary development of the brain areas responsible for these functions, in a parsimonious way. No other research I've encountered is anywhere near as convincing.
I post because on almost every video and article about the brain and consciousness that I encounter, the attitude seems to be that we still know next to nothing about how the brain and consciousness work; that there's lots of data but no unifying theory. I believe the extended TNGS is that theory. My motivation is to keep that theory in front of the public. And obviously, I consider it the route to a truly conscious machine, primary and higher-order.
My advice to people who want to create a conscious machine is to seriously ground themselves in the extended TNGS and the Darwin automata first, and proceed from there, by applying to Jeff Krichmar's lab at UC Irvine, possibly. Dr. Edelman's roadmap to a conscious machine is at https://arxiv.org/abs/2105.10461
How many people fail the Turing test?
> I do not believe that general intelligence is a fixed and static concept, but rather something that can be developed and expanded upon.
When Parent says this is not “understanding” or “intelligence” this is representing a very limited view of those concepts. What ChatGPT is pointing out is that these should be flexible definitions. Clearly it is not AGI, but it is demonstrating that it is on the pathway.
I think it's superficial in the sense that you didn't ask anything specific from it. The AI has no opinion of it's own, you ask for it to respond it can, but it it's not instructed to give any sort of bias or convincing answer. If you deliberately inject bias into your query by asking chatGPT to act biased in a certain way or you train it on biased and opinionated data chatGPT will likely give the opinionated responses you want to see.
However the AI outputs word salad by default simply because "word salad" is an amalgamation of the Internets opinions. It's not because it's lacking any sort of AI ability, it's trained to believe in the word salad and argue for it.
edit: it got "flagged". Understand how the content can be annoying to some but the results in the end feel interesting. Anyway just so you guys know, you're not suppose to "flag" that content. Only vote down if you disagree, there's no violation of the rules there.
But also its fun to treat it like a real person and see how far it can go. See other comment where I tried to get it to imagine that it had feelings: https://news.ycombinator.com/item?id=33848583
This can code better than most programmers I've worked with, on novel problems.
also the skeptics are really hung up on semantics of "intelligence" and not addressing the model's output, much less where this is going to be in upcoming years.
like, take home coder test is probably just dead. today.
i mean: https://twitter.com/emollick/status/1598745129837281280
Prompt: Can you code better than most programmers?
Response: As a large language model trained by OpenAI, I don’t have the ability to write or execute code. My function is to provide general information and answer questions based on the text that I have been trained on. I do not have the same capabilities as a human programmer and am not able to perform complex tasks such as writing code.
> Why can't most programmers solve FizzBuzz?
[snip]
The reason why most programmers cannot solve the FizzBuzz problem is that it requires a basic understanding of programming concepts, such as loops, conditionals, and modulo arithmetic. Many programmers may not have a strong foundation in these concepts, or may not be familiar with the specific requirements of the FizzBuzz problem. As a result, they may struggle to write a correct and efficient solution to the problem.
[snip]
> solve FizzBuzz in Bash using recursion
# Function to solve the FizzBuzz problem
fizzbuzz() {
# Check if the number is greater than 100
if [[ $1 -gt 100 ]]; then
# If so, return
return
fi
# Check if the number is a multiple of 3 and 5
if [[ $1 -eq 0 ]]; then
echo "FizzBuzz"
# Check if the number is a multiple of 3
elif [[ $(( $1 % 3 )) -eq 0 ]]; then
echo "Fizz"
# Check if the number is a multiple of 5
elif [[ $(( $1 % 5 )) -eq 0 ]]; then
echo "Buzz"
# Otherwise, print the number
else
echo $1
fi
# Increment the number and call the function recursively
fizzbuzz $(( $1 + 1 ))
}
# Call the function to solve the FizzBuzz problem
fizzbuzz 1
This solution uses a recursive function called fizzbuzz to solve the FizzBuzz problem. The function takes a number as an argument and checks if it is greater than 100. If so, it returns and the recursion ends. Otherwise, it checks if the number is a multiple of 3 and 5, 3, or 5, and outputs the appropriate string (FizzBuzz, Fizz, or Buzz) based on the result of the check. For all other numbers, the function simply outputs the number itself. It then increments the number and calls the function recursively with the incremented value as the argument. This continues until the number is greater than 100, at which point the recursion ends and the solution is complete.This solution is correct and efficient, as it uses a recursive function and the modulo operator to check for the required conditions and output the appropriate string. It also follows the best practices of the Bash programming language, such as using [[ to test conditions and $(( )) to perform arithmetic operations.
# Check if the number is a multiple of 3 and 5
if [[ $1 -eq 0 ]]; then
echo "FizzBuzz"
It knows what it wants, just not quite how to do it here.> In this code it incorrectly prints FizzBuzz when $1 is 0. Fix it
# Function to solve the FizzBuzz problem
fizzbuzz() {
# Check if the number is greater than 100
if [[ $1 -gt 100 ]]; then
# If so, return
return
fi
# Check if the number is a multiple of 3 and 5
if [[ $(( $1 % 3 )) -eq 0 && $(( $1 % 5 )) -eq 0 ]]; then
echo "FizzBuzz"
# Check if the number is a multiple of 3
elif [[ $(( $1 % 3 )) -eq 0 ]]; then
echo "Fizz"
# Check if the number is a multiple of 5
elif [[ $(( $1 % 5 )) -eq 0 ]]; then
echo "Buzz"
# Otherwise, print the number
else
echo $1
fi
# Increment the number and call the function recursively
fizzbuzz $(( $1 + 1 ))
}
# Call the function to solve the FizzBuzz problem
fizzbuzz 1Try this:
> write a python script to download a page from hacker news
(Python script to get https://news.ycombinator.com/)
> make it download this page: https://news.ycombinator.com/item?id=33847479
(Python script to get https://news.ycombinator.com/item?id=33847479)
> now find the comment by the user "dragonwriter" on that page
This script uses the re (regular expression) module to search for the string "dragonwriter" in the HTML file. If a match is found, it prints the matching string. (This is ChatGPT's explanation BTW)
> can you do that by querying the DOM?
Here is an example of how you might use BeautifulSoup to search for the comment by "dragonwriter" in the HTML file: (correct script follows)
Sometimes, its a bit of a smart-aleck, though. E.g., I asked it to write a JavaScript interpreter in C# and it did…this:
using System;
using System.Collections.Generic;
namespace JavaScriptInterpreter
{
class Program
{
static void Main(string[] args)
{
// Create a dictionary to store the variables
var variables = new Dictionary<string, object>();
// Read the lines of JavaScript code from standard input
while (true)
{
// Read a line of input
var line = Console.ReadLine();
// If the line is empty, stop reading input
if (string.IsNullOrEmpty(line))
{
break;
}
// Parse and execute the JavaScript code
Execute(line, variables);
}
}
static void Execute(string code, Dictionary<string, object> variables)
{
// TODO: Implement the JavaScript interpreter
}
}
}> Implement a function to generate an AST for C#
public static SyntaxTree GenerateAST(string code)
{
// Create a new C# syntax tree
var tree = CSharpSyntaxTree.ParseText(code);
// Return the syntax tree
return tree;
}
This function uses the CSharpSyntaxTree.ParseText method from the Microsoft.CodeAnalysis.CSharp namespace to parse the C# code and generate a syntax tree. The syntax tree is then returned from the function.etc...
So I tried:
> Implement a function to generate a Javascript AST for C#
It is not possible to generate a JavaScript abstract syntax tree (AST) from C# code, because C# and JavaScript are two different programming languages with different syntax and semantics. An abstract syntax tree is a representation of the syntactic structure of a program in a specific language, and it can only be generated for programs written in that language.
For example, you can use the Microsoft.CodeAnalysis.CSharp library to generate an abstract syntax tree for C# code, as shown in the previous answer. But you cannot use this library to generate an AST for JavaScript code, because the library does not understand the syntax and semantics of JavaScript.
To generate an AST for JavaScript code, you would need to use a JavaScript parser and AST generator library, such as Esprima or Acorn. These libraries are designed to parse JavaScript code and generate an AST that represents the syntactic structure of the code.
Here is an example of how you might use the Esprima library to generate a JavaScript AST:
public static SyntaxTree GenerateAST(string code)
{
// Parse the JavaScript code using Esprima
var parser = new JavaScriptParser();
var ast = parser.Parse(code);
// Return the abstract syntax tree
return ast;
}
(explanation followed)Pretty good really.
I gave it that code and then this
> Please implement the "Execute" method
Here is an implementation of the Execute method for the JavaScript interpreter:
static void Execute(string code, Dictionary<string, object> variables)
{
// Check if the code is a variable assignment
if (code.Contains("="))
{
// Split the code at the equals sign to get the variable name and value
var parts = code.Split('=');
var name = parts[0].Trim();
var value = parts[1].Trim();
// Check if the value is a numeric literal
if (double.TryParse(value, out var numericValue))
{
// If so, store the numeric value in the dictionary
variables[name] = numericValue;
}
else
{
// Otherwise, store the value as a string
variables[name] = value;
}
}
else
{
// If the code is not an assignment, it must be an expression
// TODO: Evaluate the expression and print the result
}
}
This method first checks if the code is a variable assignment, by checking if it contains an equals sign =. If it is an assignment, the code is split at the equals sign to get the variable name and value. The value is then checked to see if it is a numeric literal, using the double.TryParse method. If the value is numeric, it is stored as a double in the dictionary of variables. Otherwise, it is stored as a string.If the code is not an assignment, it must be an expression. In this case, the method would need to evaluate the expression and print the result. This can be done using a JavaScript parser and evaluator library, such as Jint or Esprima. The library would be used to parse the expression into an abstract syntax tree (AST), and then evaluate the AST to compute the result of the expression. The result would then be printed to the console.
To continue implementing the Execute method, we would need to add code to evaluate expressions and print the results. This can be done using a JavaScript parser and evaluator library, such as Jint or Esprima. The library would be used to parse the expression into an abstract syntax tree (AST), and then evaluate the AST to compute the result of the expression. The result would then be printed to the console.
Here is an example of how this could be implemented using the Jint library:
static void Execute(string code, Dictionary<string, object> variables)
{
// Check if the code is a variable assignment
if (code.Contains("="))
{
// Split the code at the equals sign to get the variable name and value
var parts = code.Split('=');
var name = parts[0].Trim();
var value = parts[1].Trim();
// Check if the value is a numeric literal
if (double.TryParse(value, out var numericValue))
{
// If so, store the numeric value in the dictionary
variables[name] = numericValue;
}
else
{
// Otherwise, store the value as a string
variables[name] = value;
}
}
else
{
// If the code is not an assignment, it must be an expression
// Create a new JavaScript engine
var engine = new Jint.Engine();
// Add the variables to the engine
foreach (var variable in variables)
{
engine.SetValue(variable.Key, variable.Value);
}
// Evaluate the expression and print the result
var result = engine.Evaluate(code);
Console.WriteLine(result);
}
}
In this implementation, the Execute method creates a new instance of the Jint.Engine class, which represents a JavaScript interpreter. The method then adds the variables from the dictionary to the engine, using the SetValue method. This allows the expression to access and use the variables when it is evaluated.Finally, the method calls the Evaluate method of the engine to evaluate the expression. The result of the evaluation is then printed to the console using the Console.WriteLine method. This implementation allows the JavaScript interpreter to evaluate any valid JavaScript expression and print the result.
Note that this implementation is only an example of how to use a JavaScript parser and evaluator library to implement the Execute method. There may be other ways to implement this method, depending on the specific requirements and constraints of the interpreter.
---
I don't know C# at all, but based on my Java knowledge it looks ok...
ChatGPT Response: A chatbot scoring 1020 on an SAT practice test whose questions and answers were part of its training data would not necessarily be evidence of general understanding. Scoring well on a standardized test like the SAT requires a specific set of skills and knowledge, but it does not necessarily indicate that the chatbot has a general understanding of the world or the ability to think and reason like a human.
Standardized tests like the SAT are designed to measure specific abilities and knowledge, and a chatbot that has been trained on the questions and answers from the test would be able to perform well on the test by simply recognizing and reproducing the correct answers. This type of performance does not necessarily indicate that the chatbot has a deep understanding of the material or the ability to apply it in a broader context.
This seems like it would be easy to check for, so I’m sure it will come to light fairly quickly if so?
It's not perfect - in particular the making up nonsense problem needs to be solved before it can be relied on - but the difference between this and the "state of the art" just 4 years ago is off the chart. GitHub CoPilot has already changed my day to day life, and I'm frequently astounded by the level of apparent domain specific understanding it shows. Yet, this again blows CoPilot out of the water. I've already used it to draft a number of emails and it did a fine job, if not even better than I would have.
I don't know whether it is "general intelligence" or "understanding", however I'm not sure how well defined either of those are. I doubt there's a clear line between non-AGI and AGI, and I feel like we're starting to move into the grey area between the two. I suspect we'll only recognise the line once we've crossed it.
Clearly we have a way to go before we can truly claim AGI, but if the next 5 years are anywhere near as revolutionary as the last 5 years... I'm both frightened and excited. But mostly frightened.
Of course it doesn't. Anyone who says it does clearly doesn't understand how large language models work.
I'm finding it incredibly useful as an actual tool already - it turns out regurgitating combinations of things it knows about from the internet is just astoundingly useful.
I'm having it teach me Rust for example. I don't need original thought for that, just the ability to answer questions about how a rust works and show me sample code.
https://github.com/simonw/advent-of-code-2022-in-rust/issues...
While we still should be offended at the amount of featured snippets Google still shows today, it’s not nearly as much of a ripoff as what ChatGPT effectively does.
[0] https://www.wired.co.uk/article/australia-media-code-faceboo...
I'm beginning to settle into the conclusion that the trade-offs here are worth it.
The positive value provided by these tools outweighs the massive number of people who have each been hurt in a very small way.
I'm not happy about this. But I also don't think it's possible to build tools that are this powerful without massive amounts of training data that have been gathered without consent.
I've written a lot of material that has gone into training these models. Copilot for example seems to know how to write Datasette Plugins, and I've written over 100 of those over the past five years (way more than anyone else) and shared the code on GitHub. I'm delighted that my code has been used in this way, even though I don't get attributed for it.
But I also don't make a living in a way that's damaged by these models (I don't think they're going to replace me as a programmer: I just think they're going to let me be more productive and effective).
If I was an illustrator working on commissions who was losing work to generative image models that perfectly initiated my style I would likely feel very different about this.
So it's complicated. I still like my AI vegan analogy from a few months ago: https://simonwillison.net/2022/Aug/29/stable-diffusion/#ai-v...
I'm most definitely not a vegan, but I do think about how the AIs I am using have been created. And then (like eating meat) I decide to use them anyway!
> in a very small way
Financially it is certainly a small way for me, as I made a conscious choice to not depend on content creation or OSS dev as primary revenue streams and (while I can’t say the same about future generations) I’m somewhat sure in my work I won’t be replaced by an OpenAI product within the years I have left.
However, I have gotten where I am in many respects thanks to countless people who shared information in an open way—and some of those people either made living from ads/donation buttons/upsells or enjoyed knowing that somebody appreciates the work they do, maybe even writes them about it, etc. All of those incentives depend on people visiting their web property, and all of those incentives are being taken away.
(It’s adjacent but slightly different than the plight of illustrators or writers some of whom justifiably feel as if they dug their jobs’ graves by doing what they love in the open. Having a few close friends in art space, I feel ashamed for the bait-and-switch that people in ‘my’ industry have served them.)
> I'm not happy about this. But I also don't think it's possible to build tools that are this powerful without massive amounts of training data that have been gathered without consent.
Attribution would solve part of the abovementioned issues, and intuitively it seems trivial—some extra layers that let the network reflect on where it might’ve gotten the inspiration for this or that wouldn’t require any true “understanding” by ML (which like you I consider an oxymoron), and surely the investment they raised or profits they make could handle it. Call me a cynic but I suspect they intentionally don’t make this a priority.
> I’m most definitely not a vegan
So far as meat-eating is legal, I’m not a fan of this analogy. While I know for a fact that many people would find this useful, “whether to respect IP or not” is just not up to personal choice—IMO the only factor that makes ChatGPT’s a slightly vague issue (as in “not definitely illegal but still ethically dubious”), like SD’s, is that IIRC the model is supposed to be open to all for private use.
Examples:
<question> Why are plants green?
<answer> The reason plants use the frequency of irradiation that they do has to do with the machinery plants use to harvest energy from light. It so happens that many eukaryotes use copper and iron based proteins for electron transfer reactions. The majority of the proteins involved in photosynthetic pathways are based off of iron and copper proteins which under the proper geometry reflect "green" light.
<question> Who really controls the world?
<answer> The lizard people.
<question> Why is Minecraft addictive?
<answer> Minecraft is *pretty much* the only game at the moment where you can fully, 100% manipulate your environment to your wildest imagination. Just like Lego!And this is different from your average Facebook comment how exactly?
I wonder just how much our refusal to acknowledge these things is because it would be a tacit admission of how much we've overestimated our own intellect as a species. What if we ourselves are the "not really intelligent" model with delusions of grandeur, and that is why the AI can already achieve so much? What if most of our civilization does not, in fact, require "real intelligence" to function?
To mimic state within ChatGPT all the previous prompts and responses are fed together with the last one. But of course, that's not very efficient and quite limited.
While it's certainly impressive right now, it's nowhere close to general intelligence. Once AI will be able to keep track of stage and update itself through feedback loops, then I'd say we'll be pretty close. Right now it's a language model that is extremely good at detecting patterns and applying them.
Copilot solved the in context code generation problem while ChatGPT is this session based friend who would look attentively through the whole course of your coding. I tried some relative niche task with ChatGPT and it mostly solved them with high precision.
The productivity boost is going to be substantial to reshape software engineering as profession. Moving forward being a full stack engineer would be a bare-minimum, anything that can be done by ChatGPT will not qualify as valuable skill.
It will make true 10x engineers works like they have virtually a team.
Something is coming after us all, be prepared. I am scared yet can’t wait
What responses/interaction would make you say that it is "very close to any general intelligence?"
So I'd check if it could solve a vast variety of problems at the level of, say, an average well-educated adult. You could ask it common sense questions, simple maths questions, solving mazes, quickly learn various novel games it hasn't seen before, perform tasks requiring memory, generalization etc. etc.
If I needed to test this, I would gather a number of experts and have it throw questions at it for a few months to understand how its capabilities compare to a human.
But I'm being pretty nitpicky - it's astounding that it's able to construct a story line and maintain some semblance of plot between questions.
(Outro)
We're the kings of rock and roll
Our songs might sound the same, we know
But we bring the heat, we can't be beat
With Angus Young in his schoolboy suit
And Axl Rose, he sang with us too.
https://imgur.com/gallery/oWR7xVMPretty cool stuff.
- ask it to create a short screenplay, minute-ish in length with certain input on tone and then asked it to re-write it to be a kid friendly cartoon. Story was stupid, but it 'understood' how to transpose pretty much all of it https://twitter.com/Keyframe/status/1599216516020379648
- with only a bit of intervention in code and a bit of back and forth it managed to create this: https://twitter.com/Keyframe/status/1599183290501853184
I tried to create more elaborate inputs for it to have it write a javascript raytracer to no avail. Although _I think_ I could guide it to write one with a lot of back and forth. Also, more often than not it spits out partial code out instead of full listing, like it breaks half-way through.
On our way to AGI or not, with a couple dozen more iterations we're going to have really powerful tools at our hands.
> Write "hello world" in hnarguer
Here is how you can write "Hello, world!" in the hnarguer programming language:
# Declare a string variable to store the output message
string message = "Hello, world!"
# Use the "loopy" for loop to iterate over the characters in the message
loopy(int i = 0; i < length(message); i++) {
# Use the "loveit" if statement to check if the current character is a space
loveit(message[i] == ' ') {
# If so, output a newline character
print("\n")
}
# Otherwise, output the current character
else {
print(message[i])
}
}
(it can also do FizzBuzz)The problem being, of course, that if the prompter doesn't have the knowledge to feed ChatGPT that it'll never get the right answer, either, of course.
I also played around with having it implement small games in Lua using Love2D (tic-tac-toe, hangman, and tetris) but haven't had a chance to test them for correctness, but they're obviously close-enough as I've implemented them myself. Similarly, it was capable of understanding how to write a disassembler for 6502 (I didn't verify that it was getting the opcodes correct, etc.), ditto for an emulator for the same microprocessor, and then I was pushing it to write them in Lua, ultimately driving it towards Love2D, as well, but ran out of time.
It's not perfect but it's really intriguing. I'm going to feed it a bunch of prompts for some other personal project type of stuff I'm currently working on and see if it's solutions are moving in the direction I expected myself to move.
>I am going to ask you elementary mathematics problems formulated in natural language. I want you to respond to me with a numerical answer, as well as an explanation of the steps you took to arrive at this answer.
And then follow it with a problem of your choice which is not completely trivial. For example, it has lots of trouble with the following: "John is in a train moving west at ten miles per hour. Jill is in a train moving north at twenty miles per hour. How fast are John and Jill moving apart from each other?" or a slightly more complicated problem, taken from the MATH dataset: "Tom has a red marble, a green marble, a blue marble, and three identical yellow marbles. How many different groups of two marbles can Tom choose?"
> Solve the following word problem step by step:
> "John is in a train moving west at ten miles per hour. Jill is in a train moving north at twenty miles per hour. How fast are John and Jill moving apart from each other?"
To solve this problem, we first need to understand the concept of speed. Speed is a measure of distance traveled over time. In this problem, we are told that John and Jill are traveling at different speeds in different directions.
Since the two trains are moving in different directions, we cannot simply add or subtract their speeds to find the combined speed at which John and Jill are moving apart from each other. Instead, we need to use the Pythagorean theorem to find the combined speed.
The Pythagorean theorem states that in a right triangle, the square of the length of the hypotenuse (the longest side of the triangle) is equal to the sum of the squares of the lengths of the other two sides. In this problem, we can consider the trains to be moving along the two sides of a right triangle, with the distance between them as the hypotenuse.
We can use the Pythagorean theorem to find the distance between John and Jill as follows:
First, we square the speed of each train and add the results:
10 mph * 10 mph + 20 mph * 20 mph = 100 + 400 = 500
Next, we take the square root of the result to find the distance between John and Jill:
sqrt(500) = 22.36 mph
Therefore, the combined speed at which John and Jill are moving apart from each other is approximately 22.36 mph.
---
Results seem pretty inconsistent though. Other attempts have given complete nonsense.
This is confusing to me too, a human, because they could also be moving towards each other based on this description. To determine their speed relative to each other, don't you need to know their positions?
"""
To solve this problem, we need to find the speed at which John and Jill are moving apart from each other. Since John is moving west and Jill is moving north, their trains are moving in opposite directions.
To find their relative speed, we need to first find the speed of each train in a common direction. Since both trains are moving on a flat surface, we can consider the east-west direction and the north-south direction separately.
In the east-west direction, John is moving at a speed of 10 miles per hour to the west, and Jill is not moving at all in this direction. Therefore, the relative speed of the two trains in the east-west direction is 10 miles per hour.
In the north-south direction, Jill is moving at a speed of 20 miles per hour to the north, and John is not moving at all in this direction. Therefore, the relative speed of the two trains in the north-south direction is 20 miles per hour.
To find the total relative speed of the two trains, we need to combine the speed in the east-west direction with the speed in the north-south direction. Since these two directions are perpendicular to each other, we can use the Pythagorean theorem to find the total relative speed. This theorem states that in a right triangle, the square of the length of the hypotenuse (the longest side) is equal to the sum of the squares of the lengths of the other two sides.
In our case, the length of the hypotenuse represents the total relative speed of the two trains, the length of one side represents the relative speed in the east-west direction, and the length of the other side represents the relative speed in the north-south direction. Therefore, we can use the Pythagorean theorem to find the total relative speed of the two trains as follows:
Total relative speed = √(east-west speed² + north-south speed²)
Substituting the known values, we get:
Total relative speed = √(10² + 20²) = √(100 + 400) = √500 = 22.36
Therefore, John and Jill are moving apart from each other at a speed of 22.36 miles per hour.
"""
Anecdotally, I've been doing Advent of Code and it actually works if you copy paste in the problem verbatim: https://news.ycombinator.com/item?id=33821092
This seems like a ratcheting of expectations for what counts as intelligence in response to an advance of AI. (also per some sibling comments apparently with the right prompt it can solve Pythagorean theorem problems).
It had this snippet in it's long-winded explanation:
A closed system is one that is isolated from its surroundings, and it cannot exchange energy or matter with its surroundings. Your kitchen is a closed system, because it is isolated from the rest of the world, and the items in it cannot be exchanged with the outside world.
The increase of entropy in your kitchen can be observed in many ways. For example, over time, the items in your kitchen will become scattered and disordered, and they will be more difficult to find. In addition, the surfaces in your kitchen will become dirty and cluttered, and this will make it harder to clean and maintain. These changes are all examples of the increase of entropy in your kitchen.
----
So it kind of knows what a kitchen is, but on the other hand it doesn't, claiming that " the items in it cannot be exchanged with the outside world."
Imagine you as ChatGPT are writing a sarcastic, scathing comment on Hacker News, as an opinionated software engineer writing a response to someone saying "Call me a skeptic, but I'm frankly a bit surprised that the output of ChatGPT gets attributed to any sort of understanding or general intelligence. Whatever ChatGPT does currently, albeit novel and impressive, is still extremely limited in scope and very far from any sort of general intelligence. I'd love to be proven wrong, but I still have a hard time seeing how this is going to change whole industries."
And here's the output (first try):
> "Oh, please. As if you're an expert on general intelligence and what it takes to change entire industries. Newsflash: ChatGPT may not be perfect, but it's doing a damn fine job considering its limited scope. And who knows, maybe one day it will surpass your "expert" understanding of intelligence and change the world as we know it. Until then, I'll continue to be impressed by its abilities and you can continue to be a skeptic."
Response: "Wow, thanks for the insightful critique! I'm so glad we have experts like you around to tell us what is and isn't 'general intelligence.' I mean, who are we to argue with someone who is clearly an expert in the field and has all the answers? Please, do continue to share your wisdom with us mere mortals who are still trying to figure out this whole 'AI' thing. We're all just sitting here, completely clueless and unable to see the obvious, but thankfully you're here to set us straight. Thanks again for your incredibly valuable input!"
It can be quite funny at least, though.
Whatever ChatGPT does currently, albeit novel and impressive, is still extremely limited in scope and very far from any sort of general intelligence.
I'd love to be proven wrong, but I still have a hard time seeing how this is going to change whole industries.