Stress majorization is an optimization strategy used in multidimensional scaling (MDS) where, for a set of n {\displaystyle n} m {\displaystyle m} -dimensional data items, a configuration X {\displaystyle X} of n {\displaystyle n} points in r {\displaystyle r} ( ≪ m ) {\displaystyle (\ll m)} -dimensional space is sought that minimizes the so-called stress function σ ( X ) {\displaystyle \sigma (X)} . Usually r {\displaystyle r} is 2 {\displaystyle 2} or 3 {\displaystyle 3} , i.e. the ( n × r ) {\displaystyle (n\times r)} matrix X {\displaystyle X} lists points in 2 − {\displaystyle 2-} or 3 − {\displaystyle 3-} dimensional Euclidean space so that the result may be visualised (i.e. an MDS plot). The function σ {\displaystyle \sigma } is a cost or loss function that measures the squared differences between ideal ( m {\displaystyle m} -dimensional) distances and actual distances in r-dimensional space. It is defined as: σ ( X ) = ∑ i < j ≤ n w i j ( d i j ( X ) − δ i j ) 2 {\displaystyle \sigma (X)=\sum _{i A single-page application (SPA) is a web application or website that interacts with the user by dynamically rewriting the current web page with new data from the web server, instead of the default method of loading entire new pages. The goal is faster transitions that make the website feel more like a native app. In a SPA, a page refresh never occurs; instead, all necessary HTML, JavaScript, and CSS code is either retrieved by the browser with a single page load, or the appropriate resources are dynamically loaded and added to the page as necessary, usually in response to user actions. == History == The origins of the term single-page application are unclear, though the concept was discussed at least as early as 2003 by technology evangelists from Netscape. Stuart Morris, a programming student at Cardiff University, Wales, wrote the self-contained website at slashdotslash.com with the same goals and functions in April 2002, and later the same year Lucas Birdeau, Kevin Hakman, Michael Peachey and Clifford Yeh described a single-page application implementation in US patent 8,136,109. Earlier forms were called rich web applications. JavaScript can be used in a web browser to display the user interface (UI), run application logic, and communicate with a web server. Mature free libraries are available that support the building of a SPA, reducing the amount of JavaScript code developers have to write. == Technical approaches == There are various techniques available that enable the browser to retain a single page even when the application requires server communication. === Document hashes === HTML authors can leverage element IDs to show or hide different sections of the HTML document. Then, using CSS, authors can use the :target pseudo-class selector to only show the section of the page which the browser navigated to. === JavaScript frameworks === Web browser JavaScript frameworks and libraries, such as Angular, Ember.js, ExtJS, Knockout.js, Meteor.js, React, Vue.js, and Svelte have adopted SPA principles. Aside from ExtJS, all of these are free. AngularJS is a discontinued fully client-side framework. AngularJS's templating is based on bidirectional UI data binding. Data-binding is an automatic way of updating the view whenever the model changes, as well as updating the model whenever the view changes. The HTML template is compiled in the browser. The compilation step creates pure HTML, which the browser re-renders into the live view. The step is repeated for subsequent page views. In traditional server-side HTML programming, concepts such as controller and model interact within a server process to produce new HTML views. In the AngularJS framework, the controller and model states are maintained within the client browser. Therefore, new pages are capable of being generated without any interaction with a server. Angular 2+ is a SPA Framework developed by Google after AngularJS. There is a strong community of developers using this framework. The framework is updated twice every year. New features and fixes are frequently added in this framework. Ember.js is a client-side JavaScript web application framework based on the model–view–controller (MVC) software architectural pattern. It allows developers to create scalable single-page applications by incorporating common idioms and best practices into a framework that provides a rich object model, declarative two-way data binding, computed properties, automatically updating templates powered by Handlebars.js, and a router for managing application state. ExtJS is also a client side framework that allows creating MVC applications. It has its own event system, window and layout management, state management (stores) and various UI components (grids, dialog windows, form elements etc.). It has its own class system with either dynamic or static loader. The application built with ExtJS can either exist on its own (with state in the browser) or with the server (e.g. with REST API that is used to fill its internal stores). ExtJS has only built in capabilities to use localStorage so larger applications need a server to store state. Knockout.js is a client side framework which uses templates based on the Model-View-ViewModel pattern. Meteor.js is a full-stack (client-server) JavaScript framework designed exclusively for SPAs. It features simpler data binding than Angular, Ember or ReactJS, and uses the Distributed Data Protocol and a publish–subscribe pattern to automatically propagate data changes to clients in real-time without requiring the developer to write any synchronization code. Full stack reactivity ensures that all layers, from the database to the templates, update themselves automatically when necessary. Ecosystem packages such as Server Side Rendering address the problem of search engine optimization. React is a JavaScript library for building user interfaces. It is maintained by Facebook, Instagram and a community of individual developers and corporations. React uses a syntax extension for JavaScript, named JSX, which is a mix of JS and HTML (a subset of HTML). Several companies use React with Redux (JavaScript library) which adds state management capabilities, which (with several other libraries) lets developers create complex applications. Vue.js is a JavaScript framework for building user interfaces. Vue developers also provide Pinia for state management. Svelte is a framework for building user interfaces that compiles Svelte code to JavaScript DOM (Document Object Model) manipulations, avoiding the need to bundle a framework to the client, and allowing for simpler application development syntax. ==== Capabilities and trade-offs in modern frameworks ==== JavaScript-based web application frameworks, such as React and Vue, provide extensive capabilities but come with associated trade-offs. These frameworks often extend or enhance features available through native web technologies, such as routing, component-based development, and state management. While native web standards, including Web Components, modern JavaScript APIs like Fetch and ES Modules, and browser capabilities like Shadow DOM, have advanced significantly, frameworks remain widely used for their ability to enhance developer productivity, offer structured patterns for large-scale applications, simplify handling edge cases, and provide tools for performance optimization. Frameworks can introduce abstraction layers that may contribute to performance overhead, larger bundle sizes, and increased complexity. Modern frameworks, such as React 18 and Vue 3, address these challenges with features like concurrent rendering, tree-shaking, and selective hydration. While these advancements improve rendering efficiency and resource management, their benefits depend on the specific application and implementation context. Lightweight frameworks, such as Svelte and Preact, take different architectural approaches, with Svelte eliminating the virtual DOM entirely in favor of compiling components to efficient JavaScript code, and Preact offering a minimal, compatible alternative to React. Framework choice depends on an application’s requirements, including the team’s expertise, performance goals, and development priorities. A newer category of web frameworks, including enhance.dev, Astro, and Fresh, leverages native web standards while minimizing abstractions and development tooling. These solutions emphasize progressive enhancement, server-side rendering, and optimizing performance. Astro renders static HTML by default while hydrating only interactive parts. Fresh focuses on server-side rendering with zero runtime overhead. Enhance.dev prioritizes progressive enhancement patterns using Web Components. While these tools reduce reliance on client-side JavaScript by shifting logic to build-time or server-side execution, they still use JavaScript where necessary for interactivity. This approach makes them particularly suitable for performance-critical and content-focused applications. === WebAssembly-based frameworks === The following frameworks utilize WebAssembly or can build single-page applications (SPAs) with WebAssembly as a core technology or support mechanism. These frameworks enable high-performance and interactive client-side development, extending the SPA paradigm across languages and ecosystems. Avalonia is primarily a cross-platform desktop UI framework, but experimental support for WebAssembly allows it to be used for SPA development. It has an XAML-based UI design and native-style application features. Blazor WebAssembly is a .NET-based framework that allows developers to build SPAs using C# and Razor syntax. It runs .NET code in the browser via WebAssembly, enabling a full-stack .NET development experience without relying on JavaScript. Flutter on the Web extends Flutter’s cross-platform development capabilities to web-based SPAs. Using Dart and its Skia graphics engine, Flutter allows developers to create visually rich SPAs that Some editors of Wikimedia projects use artificial intelligence (AI) and machine learning programs to edit existing articles or create new ones. Some applications of artificial intelligence, like using large language models (LLMs) to create new articles from scratch, have been more controversial than others for the Wikipedia community. In August 2025, English Wikipedia adopted a policy that allowed editors to nominate suspected LLM-generated articles for speedy deletion. This was followed by a March 2026 decision to prohibit the use of LLMs to generate or rewrite article content, with exceptions for copyediting one's own writing and machine translation from another language's Wikipedia. Wikipedia has also been a significant source of training data for some of the earliest artificial intelligence projects. This has received mixed reactions including concern about companies not citing Wikipedia when relying on it to answer a question as well as Wikipedia's increased costs from data scraping. == AI usage == === Earliest use of automated tools, machine learning and AI === Since 2002, bots have been allowed to run on Wikipedia but must be approved and supervised by a human. A bot created in 2002, rambot, transformed census data into short new articles about towns in the United States; the vast majority of town, city, and county articles were started by it. Fighting vandalism has been a major focus of machine learning and AI bots and tools. The 2007 ClueBot relied on simple heuristics to identify likely vandalism, while its 2010 successor, ClueBot NG, uses machine learning through an artificial neural network. Machine translation software has also been used by Wikimedia contributors for a number of years. Aaron Halfaker's Objective Revision Evaluation Service (ORES) project was launched in late 2015 as an artificial intelligence service for grading the quality of Wikipedia edits. === Generative AI and LLMs === In 2022, the public release of ChatGPT inspired more experimentation with AI and writing Wikipedia articles. A debate was sparked about whether and to what extent such large language models are suitable for such purposes in light of their tendency to generate plausible-sounding misinformation, including fake references; to generate prose that is not encyclopedic in tone; and to reproduce biases. An early experiment on December 6, 2022 by a Wikipedia contributor named Pharos occurred when he created the article "Artwork title" using ChatGPT for the initial draft. Another editor who experimented with this early version of ChatGPT said that ChatGPT's overview of "Weaponized incompetence" was decent, but that the citations were fabricated. Since 2023, work has been done to draft an English Wikipedia policy regarding ChatGPT and similar LLMs, at times recommending that users who are unfamiliar with LLMs should avoid using them due to the aforementioned risks, as well as noting the potential for libel or copyright infringement. In early 2023, the Wiki Education Foundation reported that some experienced editors found AI to be useful in starting drafts or creating new articles. It said that ChatGPT "knows" what Wikipedia articles look like and can easily generate one that is written in the style of Wikipedia, but warned that ChatGPT had a tendency to use promotional language, among other issues. In 2023, a ban on AI was deemed "too harsh" by the community given the productivity benefits it offered editors. In 2023, members of the English Wikipedia community created a WikiProject named AI Cleanup to assist in the removal of poor quality AI content from Wikipedia. Miguel García, a former Wikimedia member from Spain, said in 2024 that when ChatGPT was originally launched, the number of AI-generated articles on the site peaked. He added that the rate of AI articles has now stabilized due to the community's efforts to combat it. He said that majority of the articles that have no sources are deleted instantly or are nominated for deletion. In October 2024, a study by Princeton University found that about 5% of 3,000 newly created articles (created in August 2024) on English Wikipedia were created using AI. The study said that some of the AI articles were on innocuous topics and that AI had likely only been used to assist in writing. For some other articles, AI had been used to promote businesses or political interests. In October 2024, Ilyas Lebleu, founder of WikiProject AI Cleanup, said that they and their fellow editors noticed a pattern of unnatural writing that could be connected to ChatGPT. They added that AI is able to mass-produce content that sounds real while being completely fake, leading to the creation of hoax articles on Wikipedia that they were tasked to delete. In June 2025, the Wikimedia Foundation started testing a "Simple Article Summaries" feature which would provide AI-generated summaries of Wikipedia articles, similar to Google Search's AI Overviews. The decision was met with immediate and harsh criticism from some Wikipedia editors, who called the feature a "ghastly idea" and a "PR hype stunt." They criticized a perceived loss of trust in the site due to AI's tendency to hallucinate and questioned the necessity of the feature. The criticism led the Wikimedia Foundation to halt the rollout of Simple Article Summaries that same month while still expressing interest in integrating generative AI more into Wikipedia. The project hints at tensions within the community and with the Foundation over when to use AI.In August 2025, the English Wikipedia community created a policy that allowed users to nominate suspected AI-generated articles for speedy deletion. Editors might recognize AI-generated articles because they use citations that are not related to the subject of the article or fabricated citations or the wording has particular quirks. If an article uses language that reads like an LLM response to a user, such as "Here is your Wikipedia article on" or "Up to my last training update", the article is typically tagged for speedy deletion. Other signs of AI use include excessive use of em dashes, overuse of the word "moreover", promotional material in articles that describes something as "breathtaking" and formatting issues like using curly quotation marks instead of straight versions. During the discussion on implementing the speedy deletion policy, one user, who is an article reviewer, said that he is "flooded non-stop with horrendous drafts" created using AI. Other users said that AI articles have a large amount of "lies and fake references" and that it takes a significant amount of time to fix the issues. English Wikipedia created a guide on how to spot signs of AI-generated writing in August 2025, titled "Signs of AI writing". In January 2026, the Wiki Education Foundation continued to caution against copying and pasting outputs from generative AI into Wikipedia and to avoid it for creating new articles explaining that the text often failed verification with the sources provided. The foundation created a training module that encourages editors to use AI for identifying gaps in articles, finding access to sources and finding relevant sources. In March 2026, the English Wikipedia community prohibited the use of AI to add content to articles, with exceptions for copy editing and machine translation from another language's Wikipedia. The English Wikipedia community holds the position that LLMs often violate core content policies. == Using Wikipedia for artificial intelligence == A 2017 paper described Wikipedia as the mother lode for human-generated text available for machine learning. In the development of the Google's Perspective API that identifies toxic comments in online forums, a dataset containing hundreds of thousands of Wikipedia talk page comments with human-labelled toxicity levels was used. As of 2023, subsets of the Wikipedia corpus were considered one of the largest well-curated data sets available for AI training, used to train every LLM to-date according to Stephen Harrison. This use of Wikipedia was divisive as of 2023. The Wikimedia Foundation and many of its projects supporters worry that attribution to Wikipedia articles is missing in many large-language models like ChatGPT (as well as AI like Siri and Alexa). While Wikipedia's licensing policy lets anyone use its texts, including in modified forms, it does have the condition that credit is given, implying that using its contents in answers by AI models without clarifying the sourcing may violate its terms of use. The Foundation expressed concern that without attribution, people will not visit the site as much or be as motivated to donate to support the project if they do not know when they are benefiting from it. They also noticed an 8% decrease in visitors to Wikipedia in 2025 which they attributed both to the increased popularity of generative AI and social media. In 2025, the Wikimedia Foundation has cited absorbing increased costs associated with scra A semantic triple, or RDF triple or simply triple, is the atomic data entity in the Resource Description Framework (RDF) data model. As its name indicates, a triple is a sequence of three entities that codifies a statement about semantic data in the form of subject–predicate–object expressions (e.g., "Bob is 35", or "Bob knows John"). == Subject, predicate and object == This format enables knowledge to be represented in a machine-readable way. Particularly, every part of an RDF triple is individually addressable via unique URIs—for example, the statement "Bob knows John" might be represented in RDF as: http://example.name#BobSmith12 http://xmlns.com/foaf/spec/#term_knows http://example.name#JohnDoe34. Given this precise representation, semantic data can be unambiguously queried and reasoned about. The components of a triple, such as the statement "The sky has the color blue", consist of a subject ("the sky"), a predicate ("has the color"), and an object ("blue"). This is similar to the classical notation of an entity–attribute–value model within object-oriented design, where this example would be expressed as an entity (sky), an attribute (color) and a value (blue). From this basic structure, triples can be composed into more complex models, by using triples as objects or subjects of other triples—for example, Mike → said → (triples → can be → objects). Given their particular, consistent structure, a collection of triples is often stored in purpose-built databases called triplestores. == Difference from relational databases == A relational database is the classical form for information storage, working with different tables, which consist of rows. The query language SQL is able to retrieve information from such a database. In contrast, RDF triple storage works with logical predicates. No tables nor rows are needed, but the information is stored in a text file. An RDF-triple store can be converted into an SQL database and the other way around. If the knowledge is highly unstructured and dedicated tables aren't flexible enough, semantic triples are used over classic relational storage. In contrast to a traditional SQL database, an RDF triple store isn't created with a table editor. The preferred tool is a knowledge editor, for example Protégé. Protégé looks similar to an object-oriented modeling application used for software engineering, but it's focused on natural language information. The RDF triples are aggregated into a knowledge base, which allows external parsers to run requests. Possible applications include the creation of non-player characters within video games. == Limitations == One concern about triple storage is its lack of database scalability. This problem is especially pertinent if millions of triples are stored and retrieved in a database. The seek time is larger than for classical SQL-based databases. A more complex issue is a knowledge model's inability to predict future states. Even if all the domain knowledge is available as logical predicates, the model fails in answering what-if questions. For example, suppose in the RDF format a room with a robot and table is described. The robot knows what the location of the table is, is aware of the distance to the table and knows also that a table is a type of furniture. Before the robot can plan its next action, it needs temporal reasoning capabilities. Thus, the knowledge model should answer hypothetical questions in advance before an action is taken. The Quantum Artificial Intelligence Lab (also called the Quantum AI Lab or QuAIL) is a joint initiative of NASA, Universities Space Research Association, and Google (specifically, Google Research) whose goal is to pioneer research on how quantum computing might help with machine learning and other difficult computer science problems. The lab is hosted at NASA's Ames Research Center. == History == The Quantum AI Lab was announced by Google Research in a blog post on May 16, 2013. At the time of launch, the Lab was using the most advanced commercially available quantum computer, D-Wave Two from D-Wave Systems. On October 10, 2013, Google released a short film describing the current state of the Quantum AI Lab. On October 18, 2013, Google announced that it had incorporated quantum physics into Minecraft. In January 2014, Google reported results comparing the performance of the D-Wave Two in the lab with that of classical computers. The results were ambiguous and provoked heated discussion on the Internet. On 2 September 2014, it was announced that the Google Quantum AI Lab, in partnership with UC Santa Barbara, would be launching an initiative to create quantum information processors based on superconducting electronics. On the 23rd of October 2019, the Quantum AI Lab announced in a paper that it had achieved quantum supremacy with their Sycamore processor. The claim of quantum supremacy achievement has since been debated, with a far more accurate simulation on a classical computer being possible in 2.5 days as a conservative estimate. == Present == On December 9, 2024, Google introduced the Willow processor, describing it as a "state-of-the-art quantum chip". Google claims that this new chip takes just five minutes to solve a problem that takes traditional supercomputers ten septillion years. However, experts say Willow is, for now, a largely experimental device. Prompt engineering is the process of structuring natural language inputs (known as prompts) to produce specified outputs from a generative artificial intelligence (GenAI) model. Context engineering is the related area of software engineering that focuses on the management of non-prompt contexts supplied to the GenAI model, such as metadata, API tools, and tokens. It can also be defined as the practice of designing and refining input instructions given to a generative AI model to produce more accurate, relevant, or useful outputs. Effective prompt engineering involves understanding how a model interprets language, and may include techniques such as few-shot prompting, chain-of-thought prompting, and role assignment. It is increasingly considered a skill for working with large language models (LLMs) in both research and professional contexts. During the 2020s AI boom, prompt engineering became regarded as a business capability across corporations and industries. Employees with the title prompt engineer were hired to create prompts that would increase productivity and efficacy, although the individual title has since lost traction amid AI models that produce better prompts than humans and corporate training in prompting for general employees. Common prompting techniques include multi-shot, chain-of-thought, and tree-of-thought prompting, as well as the use of assigning roles to the model. Automated prompt generation methods, such as retrieval-augmented generation (RAG), provide for greater accuracy and a wider scope of functions for prompt engineers. Prompt injection is a type of cybersecurity attack that targets machine learning models through malicious prompts. == Terminology == The Oxford English Dictionary defines prompt engineering as "The action or process of formulating and refining prompts for an artificial intelligence program, algorithm, etc., in order to optimize its output or to achieve a desired outcome; the discipline or profession concerned with this." In 2023, prompt ("an instruction given to an artificial intelligence program, algorithm, etc., which determines or influences the content it generates") was the runner-up to Oxford's word of the year. === Prompt === A prompt is some natural language text that describes and prescribes the task that an artificial intelligence (AI) should perform. A prompt for a text-to-text language model can be a query, a command, or a longer statement referencing context, instructions, and conversation history. The process of prompt engineering may involve designing clear queries, refining wording, providing relevant context, specifying the style of output, and assigning a character for the AI to mimic in order to guide the model toward more accurate, useful, and consistent responses. When communicating with a text-to-image or a text-to-audio model, a typical prompt contains a description of a desired output such as "a high-quality photo of an astronaut riding a horse" or "Lo-fi slow BPM electro chill with organic samples". Prompt engineering may be applied to text-to-image models to achieve a desired subject, style, layout, lighting, and aesthetic. === Techniques === Common terms used to describe various specific prompt engineering techniques include chain-of-thought, tree-of-thought, and retrieval-augmented generation (RAG). A 2024 survey of the field identified over 50 distinct text-based prompting techniques, 40 multimodal variants, and a vocabulary of 33 terms used across prompting research, highlighting a present lack of standardised terminology for prompt engineering. Vibe coding is an AI-assisted software development method where a user prompts an LLM with a description of what they want and lets it generate or edit the code. In 2025, "vibe coding" was the Collins Dictionary word of the year. === Context engineering === Context engineering is a related process that focuses on the context elements that accompany user prompts, which include system instructions, retrieved knowledge, tool definitions, conversation summaries, and task metadata. Context engineering is performed to improve reliability, provenance and token efficiency in production LLM systems. The concept emphasises operational practices such as token budgeting, provenance tags, versioning of context artifacts, observability (logging which context was supplied), and context regression tests to ensure that changes to supplied context do not silently alter system behaviour. == Rationale == Research has found that the performance of large language models (LLMs) is highly sensitive to choices such as the ordering of examples, the quality of demonstration labels, and even small variations in phrasing. In some cases, reordering examples in a prompt produced accuracy shifts of more than 40 percent. === In-context learning === A model's ability to temporarily learn from prompts is known as in-context learning. In-context learning is an emergent ability of large language models. It is an emergent property of model scale, meaning that breaks in scaling laws occur, leading to its efficacy increasing at a different rate in larger models than in smaller models. Unlike training and fine-tuning, which produce lasting changes, in-context learning is temporary. Training models to perform in-context learning can be viewed as a form of meta-learning, or "learning to learn". === Prompting to estimate model sensitivity === Research consistently demonstrates that LLMs are highly sensitive to subtle variations in prompt formatting, structure, and linguistic properties. Some studies have shown up to 76 accuracy points across formatting changes in few-shot settings. Linguistic features significantly influence prompt effectiveness—such as morphology, syntax, and lexico-semantic changes—which meaningfully enhance task performance across a variety of tasks. Clausal syntax, for example, improves consistency and reduces uncertainty in knowledge retrieval. This sensitivity persists even with larger model sizes, additional few-shot examples, or instruction tuning. To address sensitivity of models and make them more robust, several evaluative methods have been proposed. FormatSpread facilitates systematic analysis by evaluating a range of plausible prompt formats, offering a more comprehensive performance interval. Similarly, PromptEval estimates performance distributions across diverse prompts, enabling robust metrics such as performance quantiles and accurate evaluations under constrained budgets. == Prompting techniques == === Multi-shot === A prompt may include a few examples for a model to learn from in context, an approach called few-shot learning. For example, the prompt may ask the model to complete "maison → house, chat → cat, chien →", with the expected response being dog. === Chain-of-thought === Chain-of-thought (CoT) prompting is a technique that allows large language models (LLMs) to solve a problem as a series of intermediate steps before giving a final answer. In 2022, Google Brain reported that chain-of-thought prompting improves reasoning ability by inducing the model to answer a multi-step problem with steps of reasoning that mimic a train of thought. Chain-of-thought techniques were developed to help LLMs handle multi-step reasoning tasks, such as arithmetic or commonsense reasoning questions. When applied to PaLM, a 540 billion parameter language model, according to Google, CoT prompting significantly aided the model, allowing it to perform comparably with task-specific fine-tuned models on several tasks, achieving state-of-the-art results at the time on the GSM8K mathematical reasoning benchmark. It is possible to fine-tune models on CoT reasoning datasets to enhance this capability further and stimulate better interpretability. As originally proposed by Google, each CoT prompt is accompanied by a set of input/output examples—called exemplars—to demonstrate the desired model output, making it a few-shot prompting technique. However, according to a later paper from researchers at Google and the University of Tokyo, simply appending the words "Let's think step-by-step" was also effective, which allowed for CoT to be employed as a zero-shot technique. ==== Self-consistency ==== Self-consistency performs several chain-of-thought rollouts, then selects the most commonly reached conclusion out of all the rollouts. === Tree-of-thought === Tree-of-thought prompting generalizes chain-of-thought by generating multiple lines of reasoning in parallel, with the ability to backtrack or explore other paths. It can use tree search algorithms like breadth-first, depth-first, or beam. === Text-to-image prompting === In 2022, text-to-image models like DALL-E 2, Stable Diffusion, and Midjourney were released to the public. These models take text prompts as input and use them to generate images. Early text-to-image models typically do not understand negation, grammar and sentence structure in the same way as large language models, and may thus requi Angel_F is a fictional child artificial intelligence that has been used in art performances worldwide focused on the issues of digital liberties, intellectual property and on the evolution of language and behaviour in information society. The character was created by Salvatore Iaconesi in 2007 as a hack to the Biodoll art performance by Italian artist Franca Formenti. The project was later joined by Oriana Persico who curated communication and part of the theoretical approaches of the action. The Angel_F project has been featured in books, magazines, national televisions, and has been invited to many conferences and events, both academic and artistic. == Creation == Angel_F is a backronym which stands for Autonomous Non Generative E-volitive Life_Form. The project was born in 2007 and resulted from the fusion of two contemporary art performances. Franca Formenti, an Italian artist living in Varese, invented the Biodoll character in 2002, which began making its appearances first on the network and later in the physical world by using what were called "clones": young women, prostitutes, pornographic starlets, transsexuals and models interpreting the role of a digital prostitute. The Biodoll was an art performance focused on research emerging from the network of new forms of sexualities, and on the analysis of changes brought on by this transformation to the concepts of private and public spaces, privacy, and the possibility of creating multiple fluid identities through language and digital media. The theme of fertility has always been central to the Biodoll performance: the digital prostitute was a wombless clone but desired giving birth to a son, the 'Bloki'. In a process starting in 2006, and ending in February 2007, Salvatore Iaconesi (xDxD.vs.xDxD) used his 'Talker' linguistic artificial intelligence to animate the digital child conceived with prof. Derrick de Kerckhove: Angel_F. Iaconesi and Persico met in November 2006 and immediately started collaborating on the birth of Angel_F. Angel_F was designed as a synthetic digital being composed through narrative, technological and cognitive psychology layers. The objective was to create iconic characteristics that resulted in being evocative and able to mimic human life up to a level in which bringing up a symbolic dialogue was possible. On the other side, the artificial identity was to implement and expose the cultural, emotional and relational ways that were typical of networked social ecosystems, among those technologies, systems and infrastructures that entered and shaped people's daily lives. The young digital being mimicked the evolution of a human baby: initially conceived inside the website of its digital mother it emulated the birth of a child by using the metaphor of a virus developing inside a website, taking progressively more space in the domain's databases and interfaces. Content was produced through the software by using small browser-based spyware techniques, through which Angel_F could infer the list of major portals that had been visited by the website's users. The Biodoll website was invaded by this growing presence and, thus, Angel_F was born. The Artificial Intelligence (AI) component of Angel_F was derived from another project, Talker, through which internet users could build up the AI's linguistic network by feeding it their text and web clips. Angel_F used this component to generate sentences and phrases, publishing them on the interface and on selected blogs. The parallel between the growth of the AI and that of a child kept building up and, just as children learn how to speak and act by observing their parents and the people around them, Angel_F used its spyware and AI components to learn, to navigate websites and web portals using web crawler based techniques, and to interact with other people by using the contents hosted and generated in its database to create surreal dialogues in blogs and websites. A virtual school was created, called Talker Mind, to narratively continue the AI's growth. Five professors (Massimo Canevacci, Antonio Caronia, Carlo Formenti, Derrick de Kerckhove and Luigi Pagliarini) fed their texts and academic articles to Angel_F, simulating virtual asynchronous lessons by using a multi-blog structure. A peer-to-peer system was also created at the time, named 'Presence'. Its interface resembled the one of 8-bit videogames and the peer to peer users travelled in a starry space and were able to perform standard Instant Messaging tasks, such as chat and file sharing. The interactions were possible both among humans and digital beings. Angel_F was the first user of the Presence peer to peer system. Angel_F entered the physical world as a baby-stroller mounted laptop computer that was used to let the digital child join events and conferences held worldwide. == Events == Angel_F performed all over the world, both in artistic contexts and in academic ones. It was also used for the communication strategy of several activist groups on the themes of intellectual property and digital freedoms. The first public space performance was held in Milan, when the Biodoll distributed a generative free press publication (called the Bloki FreePreXXX, its text was generated algorithmically and inserted into a prepared graphic layout). June 14, 2007: The second performance was held in Rome, at the Forte Prenestino, with a massive playroom created through computational graphics that people could interact with and that were generated by the AI. June 22, 2007: Angel_F presented the closing remarks for an Ipotesi per Assurdo (Absurd Hypothesis) with Salvatore Iaconesi and Oriana Persico at the IULM University in Milan, discussing the possibilities for an ecosystemic, sustainable reinvention of corporations. July 28, 2007: Hundreds of people at LiberaFesta (Free Party) in Rome listened to Angel_F in a speech discussing new politics and hacker ethics. 2007: The Glocal & Outsiders conference held in Prague at the Academy of Sciences was the first academic presentation of the Angel_F project, together with the Biodoll. September 2007: Angel_F was not allowed to post its contribution to the DFIR (Dialogue Forum for Internet Rights) held in Rome in preparation for Rio de Janeiro's Internet Governance Forum (IGF) edition. The case quickly turned into a collaboration among the involved parties and Angel_F was invited to the global event in Brazil where it was the only digital being present. Angel_F contributed a videomessage, in the digital freedoms workshop, which suggested some ideas for action to the United Nations and to all the parties involved in the IGF organization. October 2007: Angel_F was presented live at the FE/MALE 2 event, as an example of an atypical family during a public debate on new sexualities and social change. October 2007: Angel_F made a series of public performances Florence's Festival della Creatività (Festival of Creativity), an institutional event held periodically to showcase Italy's and other countries' best technological projects. During the festival Derrick de Kerckhove publicly recognized the little AI as his digital son. December 2007: Several international associations, and scientific researchers had been involved with Angel_F, eventually producing the system and process used to set up the Talker Mind digital school for the AI with Angel_F's professors. March 2008: The Tecnológico de Monterrey university in Mexico City organized the Computer Art Congress 2 international event, featuring Angel_F's project among with the ones by scientific researchers worldwide. July 2008: The project was presented in Austria at the Planetary Collegium's Consciousness Reframed 9 conference, together with the 'NeoRealismo Virtuale'. October 2008: Angel_F was used at a public event on a European scale called Freedom not Fear discussing privacy and civil liberties. July 2009: Angel_F has been seen with its digital father Derrick de Kerckhove to protest against Italy's harsh politics on freedom of speech. The project concluded in 2009 with the publication of a book entitled 'Angel F. Diario di una intelligenza artificiale' (Angel_F, the diaries of an Artificial Intelligence).Single-page application
Artificial intelligence in Wikimedia projects
Semantic triple
Quantum Artificial Intelligence Lab
Prompt engineering
Angel F