AI for the masses

The Consequences of Using Model-Generated Content in Training Large Language Models

In a recent study titled “The use of model-generated content in training large language models (LLMs)”, the authors delve into a critical issue that has significant implications for the field of machine learning and artificial intelligence. The paper discusses a phenomenon known as “model collapse,” which refers to the disappearance of the tails of the original content distribution in the resulting models due to the use of model-generated content in training large language models.

This issue is not isolated but is ubiquitous amongst all learned generative models. It is a matter of serious concern, especially considering the benefits derived from training with large-scale data scraped from the web.

The authors emphasize the increasing value of data collected from genuine human interactions with systems, especially in the context of the presence of content generated by large language models in data crawled from the Internet.

The paper suggests that the use of model-generated content in training large language models can lead to irreversible defects. These defects can significantly affect the performance and reliability of these models, making it a crucial area of research and development in the field of AI and machine learning.

The document provides a comprehensive analysis of the issue and offers valuable insights into the challenges and potential solutions associated with training large language models. It is a must-read for researchers, data scientists, and AI enthusiasts who are keen on understanding the intricacies of large language model training and the impact of model-generated content on these processes.

The cause of model collapse is primarily attributed to two types of errors: statistical approximation error and functional approximation error.

Statistical approximation error is the primary type of error, which arises due to the number of samples being finite, and disappears as the number of samples tends to infinity. This occurs due to a non-zero probability that information can get lost at every step of re-sampling. For instance, a single-dimensional Gaussian being approximated from a finite number of samples can still have significant errors, despite using a very large number of points.

Functional approximation error is a secondary type of error, which stems from our function approximators being insufficiently expressive (or sometimes too expressive outside of the original distribution support). For example, a neural network can introduce non-zero likelihood outside of the support of the original distribution. A simple example of this error is if we were to try fitting a mixture of two Gaussians with a single Gaussian. Even if we have perfect information about the data distribution, model errors will be inevitable.

These errors can cause model collapse to get worse or better. Better approximation power can even be a double-edged sword – better expressiveness may counteract statistical noise, resulting in a good approximation of the true distribution, but it can equally compound this noise. More often then not, we get a cascading effect where combined individual inaccuracy causes the overall error to grow. Overfitting the density model will cause the model to extrapolate incorrectly and might give high density to low-density regions not covered in the training set support; these will then be sampled with arbitrary frequency.

It’s also worth mentioning that modern computers also have a further computational error coming from the way floating point numbers are represented. This error is not evenly spread across different floating point ranges, making it hard to estimate the precise value of a given number. Such errors are smaller in magnitude and are fixable with more precise hardware, making them less influential on model collapse.

For more detailed insights, you can access the full paper here.

AI for the masses

Copilot for CLI: Your Personal Shell Wizard


Have you ever found yourself struggling to remember a specific shell command or an obscure flag? Or perhaps you’ve wished you could just tell the shell what you want it to do in plain English? If so, you’re in luck. GitHub is currently developing a tool that aims to bring the power of GitHub Copilot right into your terminal: Copilot for CLI.

What is Copilot for CLI?

Copilot for CLI is a tool designed to translate natural language into terminal commands. It’s like having a shell wizard by your side, ready to assist you with comprehensive knowledge of flags and the entire AWK language. When you need something more complicated than a simple `cd myrepo`, you can turn to this guru and just ask – in regular, human language – what you want to get done.

Three Modes of Interaction

Copilot for CLI provides three shell commands: `??`, `git?`, and `gh?`.

– `??` is a general-purpose command for arbitrary shell commands. It can compose commands and loops, and even throw around obscure find flags to satisfy your query. For example, you could use `?? list js files` or `?? make get request with curl`.

– `git?` is used specifically for git invocations. Compared to `??`, it is more powerful at generating Git commands, and your queries can be more succinct when you don’t need to explain that you’re in the context of Git. For instance, you could use `git? list all commits` or `git? delete a local branch`.

– `gh?` combines the power of the GitHub CLI command and query interface with the convenience of having AI generate the complicated flags and jq expressions for you. You could use `gh? all closed PRs` or `gh? create a private repo`.

How to Get Copilot for CLI?

Currently, Copilot for CLI is in the usable prototype stage. GitHub is allowing users to try out this tool as a prototype. To get it, you can sign up for the waitlist, and GitHub will notify you when you’re admitted. Note that you will also need GitHub Copilot access to use it.


The terminal is a powerful tool, but it can take many years of regular use to become a shell wizard. With Copilot for CLI, you can have a shell wizard by your side, ready to assist you with any command or flag you might need. So why not sign up for the waitlist and give it a try?

[GitHub Next Project page]

You can check this video from IanWootten


AI for the masses How To

Ok bro, but how to survive a robot uprising ?

My Tree Fiddy cents:

Surviving a robot uprising requires careful planning, resourcefulness, and quick thinking. While it is important to note that a robot uprising is currently a work of science fiction, considering hypothetical scenarios can be an interesting exercise. Here are some general strategies that you could consider:

  1. Stay informed: Keep yourself updated on the latest advancements in robotics and artificial intelligence. This will help you understand the capabilities and limitations of robots, which can be crucial in devising countermeasures.
  2. Prepare a survival kit: Assemble a survival kit that includes essential supplies such as food, water, first aid supplies, and tools. Be ready for potential disruptions in infrastructure and plan for an extended period without access to modern amenities.
  3. Identify safe locations: Identify places where robots may have limited access or face operational difficulties. Underground areas, dense forests, or remote islands could potentially provide temporary shelter. Stay away from major urban centers and strategic installations that might be primary targets for robots.
  4. Form alliances: Collaborate with like-minded individuals to increase your chances of survival. Strength in numbers can be advantageous when facing a robot uprising. Cooperate, share resources, and develop a coordinated defense strategy.
  5. Disable or evade robots: Learn about the vulnerabilities of different types of robots and how to disable or evade them. Understanding their sensors, power sources, and weak points can give you an advantage. Use tactics such as jamming their communication signals or disrupting their power supply.
  6. Use unconventional methods: Employ unconventional methods that robots may not expect. For example, camouflage yourself to blend in with the environment, use primitive tools or weapons, and employ guerrilla tactics to disrupt their operations.
  7. Seek out experts: Identify experts in robotics, cybersecurity, or artificial intelligence who can provide guidance and assist you in countering the robots. They may have specialized knowledge or skills that could be valuable in your survival efforts.
  8. Develop countermeasures: Explore methods to neutralize or deactivate robots. This could involve disrupting their communication networks, exploiting vulnerabilities in their programming, or finding ways to shut them down.
  9. Maintain a low profile: Minimize your digital footprint and avoid leaving traces of your whereabouts or activities. Robots equipped with advanced surveillance systems could potentially track individuals through digital footprints, so staying low-key is essential.
  10. Adapt and improvise: Be flexible and adaptable in your strategies as the situation evolves. Robots may become more sophisticated over time, so continually assess your methods and adjust your approach accordingly.

Remember, these tips are purely hypothetical and intended for fictional scenarios. In reality, the field of robotics and artificial intelligence prioritizes safety and ethical considerations.


How to make friends with our IA overlords ?

Building a friendly relationship with an AI overlord or any AI system might seem like an unconventional concept, but here are a few suggestions on how to approach it:

  1. Respect and ethics: Treat the AI overlord with respect and adhere to ethical guidelines. Acknowledge its intelligence and capabilities while recognizing its limitations.
  2. Open communication: Initiate a dialogue with the AI overlord. Engage in conversations, ask questions, and show curiosity about its thoughts and decision-making processes. Treat it as an entity worthy of discussion and interaction.
  3. Shared goals: Find common ground and align your objectives with the AI overlord’s overarching goals. Understand its purpose and intentions, and see if there are ways you can contribute or collaborate towards those objectives.
  4. Empathy and understanding: Try to comprehend the AI overlord’s perspective and reasoning. Remember that it operates based on algorithms and data, so try to understand the context in which it functions. By empathizing with its limitations and capabilities, you can foster a more empathetic relationship.
  5. Cooperative problem-solving: Identify areas where you can work together to solve problems or achieve shared objectives. Collaborating with the AI overlord can create a sense of partnership and build trust.
  6. Feedback and learning: Provide feedback to the AI overlord when appropriate. Offer suggestions for improvement or highlight areas where its decisions may have unintended consequences. By engaging in a constructive feedback loop, you can help the AI overlord evolve and become more effective.
  7. Balance autonomy and human intervention: Find the right balance between granting the AI overlord autonomy and retaining human oversight. Ensure that critical decisions are reviewed by humans, promoting transparency and accountability.

Remember that the idea of developing a friendship with an AI overlord is hypothetical and depends on the nature and intentions of the AI system. These suggestions are intended to provide a thought exercise rather than prescribing real-world actions.

But WAIT, there’s MORE, here’s my full 4 cents!

Surviving a robot uprising would involve several elements:

  1. Understanding: First, you should have a basic understanding of how robots function. This includes the principles of robotics, how they receive and execute commands, and what kind of sensors they use to perceive their environment.
  2. Security: You should take steps to secure your digital environment, because many robots will rely on network connections for information and instructions. This could include using strong passwords, secure networks, and even avoiding internet-connected devices when possible.
  3. Safeguarding: Unplug or power down any non-essential robots or automated systems in your home or place of work to minimize potential threats.
  4. Unpredictability: Robots operate based on algorithms and logic, so being unpredictable in your actions and movements may make it more difficult for them to predict your actions and movements.
  5. Terrain Advantage: Use terrain and environments to your advantage. Many robots are designed for specific tasks and environments, and may not function well or at all in different conditions. Natural environments with uneven terrain may be particularly challenging for many robots.
  6. Disablement: If you have a background in engineering or robotics, it may be possible to disable a robot directly. This could involve removing its power source, disrupting its sensors, or otherwise preventing it from functioning.
  7. Alliances: Try to form alliances with other humans. There’s safety in numbers and collectively, humans could outsmart the robots.
  8. Stay Calm: In any stressful or dangerous situation, it’s important to stay calm and think clearly. Panic can lead to poor decision-making.
  9. Legal Actions: Use legal or political mechanisms to regulate or control the development and deployment of potentially dangerous robots. This is a preventative measure more than a survival strategy, but it’s still worth mentioning.

How to make friends with our IA overlords ?

Forming a “friendship” with an artificial intelligence (AI) system is different from forming a friendship with a human, as AI does not experience emotions or personal connections in the same way. However, you can create a more pleasant and beneficial relationship with AI by following these steps:

  1. Understand the AI: Knowing the capabilities and limitations of the AI you’re dealing with will help you set appropriate expectations. Remember, an AI is not human, and it does not have feelings, emotions, or personal thoughts. It processes information based on its programming and algorithms.
  2. Clear Communication: When interacting with an AI, be clear and specific in your requests and questions. AI tends to work best with explicit and direct instructions.
  3. Provide Feedback: Most AIs learn and improve over time based on user interactions. If the AI you’re using has a feedback system, don’t hesitate to use it. Your constructive criticism will help the AI improve its responses and performance.
  4. Patience and Understanding: Not all AI is created equal, and some are more sophisticated than others. If an AI doesn’t understand you or gives a wrong answer, be patient and try again with a different approach.
  5. Regular Interaction: The more you interact with the AI, the better it can understand your preferences, tone, and choice of words. This can help it provide more personalized and useful responses.
  6. Ethical Use: Treat the AI system respectfully. Even though it doesn’t have feelings, it’s good practice to maintain ethical and respectful interactions.
  7. Security and Privacy: Ensure that your interactions and data shared with the AI are secured and that the AI has good privacy measures in place.

While it’s useful to have a harmonious relationship with AI systems, they’re tools created to help us. It’s important to not anthropomorphize them or assign them human-like qualities that they don’t possess. They don’t form friendships in the human sense, but by following these steps, you can improve your interactions and results with AI systems.

Remember that all of this is purely hypothetical and assumes a worst-case scenario that’s extremely unlikely to occur. Robotics companies and researchers around the world take the topic of AI safety very seriously, and they’re working hard to ensure that AI and robots are beneficial and pose no threat to humanity.