Breaking FAKE News
We will try to integrate streams of Breaking News into RogueGPT Examples are Twitter Trends, News from Reddit, and data we can get from RSS feeds The goal is to two-fold: On the one hand we want to automate the input for the SeedPhrase of RogueGPT. On the other hand we want to explore the potential of quickly generating Fake News about topics that are moving people right now.
RogueGPT is a research project focused on exploring the boundaries of generative AI in the context of (fake) news fragment generation. This early work-in-progress version is designed to create machine-generated news content, aiming to challenge perceptions and spark discussions on the authenticity of digital content.
🔍 Want to test your judgment? If you're interested in seeing this application in action and would like to participate in the evaluation of fake news, please visit our interactive survey at https://judgegpt.streamlit.app/. A port to React is currently in development, and can be beta tested at https://aka.ms/JudgeGPT.
🧠 Curious about spotting fake news? If you want to learn more about spotting fake news, especially during election periods, check out this blog post for tips and insights.
The project comprises a Streamlit application (app.py
) that allows users to input details for generating news fragments using OpenAI's GPT models. It includes functionality for both manual data entry and automated news generation based on a set of predefined parameters loaded from prompt_engine.json
. The generated content is intended for use in our sister project, JudgeGPT, where participants are asked to assess whether they perceive the content as machine or human-generated.
The name RogueGPT carries a significant meaning within the context of this project. The term "GPT" is used pars pro toto, a rhetorical device where the name of a part of something is used to refer to the whole. In our case, "GPT" refers not only to OpenAI's Generative Pre-trained Transformer models but also broadly encompasses a wider array of Large Language Models (LLMs). This naming choice signifies that while the project currently utilizes GPT models, it is not limited to them and is open to integrating other LLMs in the future. The prefix "Rogue" is deliberately chosen to highlight the contentious nature of using machine learning for the production of news content, which is often seen as a problematic issue. It serves as an allusion to ChatGPT, suggesting that RogueGPT takes a divergent, perhaps more controversial, path by engaging directly with the generation of (potentially fake) news fragments.
-
app.py
: The main Python script that runs the Streamlit application, handling user input, content generation, and database operations. -
prompt_engine.json
: A configuration file that defines the structure for automated news generation, including templates, styles, and components for different languages. -
requirements.txt
: Lists the Python package dependencies necessary for running the application. -
Database integration for data storage.
To run RogueGPT locally, follow these steps:
-
Clone this repository:
git clone https://github.com/aloth/RogueGPT.git cd RogueGPT
-
Install the required dependencies listed in
requirements.txt
using pip:pip install -r requirements.txt
-
Launch the Streamlit application:
streamlit run app.py
The application has two main tabs:
- Manual Data Entry: Allows users to manually input details for a news fragment, including content, source, and metadata.
- Generator: Utilizes the
prompt_engine.json
configuration to generate news fragments automatically based on selected criteria.
Generated fragments can be saved to a MongoDB database and are primarily meant to serve as input for the JudgeGPT project.
RogueGPT is in its early stages and is continuously evolving. The output generated by this project is experimental and intended for research purposes within the scope of understanding AI's impact on news authenticity.
We welcome contributions to RogueGPT from the community! To get involved:
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature
) - Commit your changes (
git commit -m 'Add some AmazingFeature'
) - Push to the branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
For major changes, please open an issue first to discuss what you would like to change.
RogueGPT, while already a significant step forward in the exploration of AI-generated content, has numerous avenues for expansion and enhancement. The project's potential growth areas are designed to elevate its capabilities, broaden its impact, and deepen its exploration into the interplay between AI and news creation:
-
Cross-Model Integration: Expanding beyond GPT, we plan to integrate a variety of generative models such as BERT, T5, and others. This diversification will allow RogueGPT to generate content with distinct writing styles and tonal variations, enabling a more nuanced exploration of how different AI models mimic human news writing across various topics and domains.
-
Content Verification Layer: We aim to implement an automated fact-checking system that cross-references generated content against a database of trusted sources, such as verified news outlets and public records. This system would not only enhance the integrity of the generated news but also automatically flag and correct any inaccuracies, reducing the potential for the dissemination of false information.
-
Trending Topics Adaptation: By integrating real-time data feeds, RogueGPT could generate news content on trending topics by scraping the latest data from social media platforms, news aggregators, and search engine trends. This feature would make RogueGPT highly responsive to current events, allowing it to produce relevant and timely news stories that reflect ongoing global developments.
-
Collaborative Editing Tools: We plan to introduce a suite of collaborative editing tools that allow multiple users to simultaneously edit and refine both AI-generated and human-generated news fragments. These tools would include version control, real-time editing, and comment threads to facilitate seamless teamwork and content curation.
-
Integration with Fact-Checking Services: Establishing APIs with leading fact-checking organizations such as Snopes, FactCheck.org, and PolitiFact will allow the generated content to be vetted for accuracy and bias. This partnership would not only enhance the credibility of the content produced by RogueGPT but also provide valuable insights into the AI's performance, informing further model refinements.
-
Image Support: Expanding RogueGPT's capabilities to include the generation or incorporation of images, such as real photos or deepfakes. This would allow users to create multimedia news content, blending text with visuals to produce more engaging and convincing stories.
-
Production Environment: Transitioning to a robust cloud platform like Microsoft Azure to ensure scalable, secure, and efficient operation of RogueGPT. Azure's AI and machine learning services would also enable more sophisticated data processing and model training, improving the overall performance and reliability of the system.
RogueGPT is open-source and available under the GNU GPLv3 License. For more details, see the LICENSE file in the repository.
- OpenAI for their groundbreaking GPT models
- Streamlit for enabling rapid development of our web application
- MongoDB for robust database solutions
- The open-source community for invaluable tools and libraries
RogueGPT is an independent research project and is not affiliated with, endorsed by, or in any way officially connected to OpenAI. The use of "GPT" within our project name is purely for descriptive purposes, indicating the use of generative pre-trained transformer models as a core technology in our research. Our project's explorations and findings are our own and do not reflect the views or positions of OpenAI or its collaborators. We are committed to responsible AI research and adhere to ethical guidelines in all aspects of our work, including the generation and analysis of content.
⭐ If you find RogueGPT interesting, give it a star on GitHub!
📧 For more information, collaborations or to report issues, please open an issue on our GitHub repository.