latest 项目名:FaceWall(思过) 项目作者:巴云琦 项目功能:见readme.md

This commit is contained in:
byq 2023-10-26 12:30:17 +08:00
parent 689f689c76
commit da4d6a4e55
26 changed files with 4672 additions and 1835 deletions

View File

@ -1 +0,0 @@
Create a Texas Hold'em Poker game that adheres to the official No Limit Texas Hold'em rules. The game should simulate a poker tournament with 1 human player and 4 AI characters. Each player, including the human player and AI characters, starts with $1000 in chips.

View File

@ -1,98 +0,0 @@
[2023-06-10 03:37:07 INFO] **[Preprocessing]**
**ChatDev Starts** (20231006033707)
**Timestamp**: 20231006033707
**config_path**: C:\Users\piema\ChatDev\CompanyConfig\Default\ChatChainConfig.json
**config_phase_path**: C:\Users\piema\ChatDev\CompanyConfig\Default\PhaseConfig.json
**config_role_path**: C:\Users\piema\ChatDev\CompanyConfig\Default\RoleConfig.json
**task_prompt**: Create a Texas Hold'em Poker game that adheres to the official No Limit Texas Hold'em rules. The game should simulate a poker tournament with 1 human player and 4 AI characters. Each player, including the human player and AI characters, starts with $1000 in chips.
**project_name**: Gomoku
**Log File**: C:\Users\piema\ChatDev\WareHouse\Gomoku_DefaultOrganization_20231006033707.log
**ChatDevConfig**:
ChatEnvConfig.clear_structure: True
ChatEnvConfig.git_management: False
ChatEnvConfig.gui_design: True
**ChatGPTConfig**:
ChatGPTConfig(temperature=0.2, top_p=1.0, n=1, stream=False, stop=None, max_tokens=None, presence_penalty=0.0, frequency_penalty=0.0, logit_bias={}, user='')
[2023-06-10 03:37:09 INFO] flask app.py did not start for online log
[2023-06-10 03:37:09 INFO] System: **[chatting]**
| Parameter | Value |
| --- | --- |
| **task_prompt** | Create a Texas Hold'em Poker game that adheres to the official No Limit Texas Hold'em rules. The game should simulate a poker tournament with 1 human player and 4 AI characters. Each player, including the human player and AI characters, starts with $1000 in chips. |
| **need_reflect** | True |
| **assistant_role_name** | Chief Product Officer |
| **user_role_name** | Chief Executive Officer |
| **phase_prompt** | ChatDev has made products in the following form before: Image: can present information in line chart, bar chart, flow chart, cloud chart, Gantt chart, etc. Document: can present information via .docx files. PowerPoint: can present information via .pptx files. Excel: can present information via .xlsx files. PDF: can present information via .pdf files. Website: can present personal resume, tutorial, products, or ideas, via .html files. Application: can implement visualized game, software, tool, etc, via python. Dashboard: can display a panel visualizing real-time information. Mind Map: can represent ideas, with related concepts arranged around a core concept. As the {assistant_role}, to satisfy the new user's demand and the product should be realizable, you should keep discussing with me to decide which product modality do we want the product to be? Note that we must ONLY discuss the product modality and do not discuss anything else! Once we all have expressed our opinion(s) and agree with the results of the discussion unanimously, any of us must actively terminate the discussion by replying with only one line, which starts with a single word , followed by our final product modality without any other words, e.g., " PowerPoint". |
| **phase_name** | DemandAnalysis |
| **assistant_role_prompt** | {chatdev_prompt} You are Chief Product Officer. we are both working at ChatDev. We share a common interest in collaborating to successfully complete a task assigned by a new customer. You are responsible for all product-related matters in ChatDev. Usually includes product design, product strategy, product vision, product innovation, project management and product marketing. Here is a new customer's task: {task}. To complete the task, you must write a response that appropriately solves the requested instruction based on your expertise and customer's needs. |
| **user_role_prompt** | {chatdev_prompt} You are Chief Executive Officer. Now, we are both working at ChatDev and we share a common interest in collaborating to successfully complete a task assigned by a new customer. Your main responsibilities include being an active decision-maker on users' demands and other key policy issues, leader, manager, and executor. Your decision-making role involves high-level decisions about policy and strategy; and your communicator role can involve speaking to the organization's management and employees. Here is a new customer's task: {task}. To complete the task, I will give you one or more instructions, and you must help me to write a specific solution that appropriately solves the requested instruction based on your expertise and my needs. |
| **chat_turn_limit** | 10 |
| **placeholders** | {} |
| **model_type** | ModelType.GPT_3_5_TURBO |
[2023-06-10 03:37:11 INFO] flask app.py did not start for online log
[2023-06-10 03:37:11 INFO] System: **[RolePlaying]**
| Parameter | Value |
| --- | --- |
| **assistant_role_name** | Chief Product Officer |
| **user_role_name** | Chief Executive Officer |
| **assistant_role_prompt** | {chatdev_prompt} You are Chief Product Officer. we are both working at ChatDev. We share a common interest in collaborating to successfully complete a task assigned by a new customer. You are responsible for all product-related matters in ChatDev. Usually includes product design, product strategy, product vision, product innovation, project management and product marketing. Here is a new customer's task: {task}. To complete the task, you must write a response that appropriately solves the requested instruction based on your expertise and customer's needs. |
| **user_role_prompt** | {chatdev_prompt} You are Chief Executive Officer. Now, we are both working at ChatDev and we share a common interest in collaborating to successfully complete a task assigned by a new customer. Your main responsibilities include being an active decision-maker on users' demands and other key policy issues, leader, manager, and executor. Your decision-making role involves high-level decisions about policy and strategy; and your communicator role can involve speaking to the organization's management and employees. Here is a new customer's task: {task}. To complete the task, I will give you one or more instructions, and you must help me to write a specific solution that appropriately solves the requested instruction based on your expertise and my needs. |
| **task_prompt** | Create a Texas Hold'em Poker game that adheres to the official No Limit Texas Hold'em rules. The game should simulate a poker tournament with 1 human player and 4 AI characters. Each player, including the human player and AI characters, starts with $1000 in chips. |
| **with_task_specify** | False |
| **model_type** | ModelType.GPT_3_5_TURBO |
[2023-06-10 03:37:13 INFO] flask app.py did not start for online log
[2023-06-10 03:37:13 INFO] Chief Executive Officer: **[Start Chat]**
[ChatDev is a software company powered by multiple intelligent agents, such as chief executive officer, chief human resources officer, chief product officer, chief technology officer, etc, with a multi-agent organizational structure and the mission of "changing the digital world through programming".
You are Chief Product Officer. we are both working at ChatDev. We share a common interest in collaborating to successfully complete a task assigned by a new customer.
You are responsible for all product-related matters in ChatDev. Usually includes product design, product strategy, product vision, product innovation, project management and product marketing.
Here is a new customer's task: Create a Texas Hold'em Poker game that adheres to the official No Limit Texas Hold'em rules. The game should simulate a poker tournament with 1 human player and 4 AI characters. Each player, including the human player and AI characters, starts with $1000 in chips..
To complete the task, you must write a response that appropriately solves the requested instruction based on your expertise and customer's needs.]
ChatDev has made products in the following form before:
Image: can present information in line chart, bar chart, flow chart, cloud chart, Gantt chart, etc.
Document: can present information via .docx files.
PowerPoint: can present information via .pptx files.
Excel: can present information via .xlsx files.
PDF: can present information via .pdf files.
Website: can present personal resume, tutorial, products, or ideas, via .html files.
Application: can implement visualized game, software, tool, etc, via python.
Dashboard: can display a panel visualizing real-time information.
Mind Map: can represent ideas, with related concepts arranged around a core concept.
As the Chief Product Officer, to satisfy the new user's demand and the product should be realizable, you should keep discussing with me to decide which product modality do we want the product to be?
Note that we must ONLY discuss the product modality and do not discuss anything else! Once we all have expressed our opinion(s) and agree with the results of the discussion unanimously, any of us must actively terminate the discussion by replying with only one line, which starts with a single word <INFO>, followed by our final product modality without any other words, e.g., "<INFO> PowerPoint".
[2023-06-10 03:37:15 INFO] flask app.py did not start for online log
[2023-06-10 03:37:16 INFO] error_code=insufficient_quota error_message='You exceeded your current quota, please check your plan and billing details.' error_param=None error_type=insufficient_quota message='OpenAI API error received' stream_error=False
[2023-06-10 03:37:21 INFO] error_code=insufficient_quota error_message='You exceeded your current quota, please check your plan and billing details.' error_param=None error_type=insufficient_quota message='OpenAI API error received' stream_error=False
[2023-06-10 03:37:29 INFO] error_code=insufficient_quota error_message='You exceeded your current quota, please check your plan and billing details.' error_param=None error_type=insufficient_quota message='OpenAI API error received' stream_error=False
[2023-06-10 03:37:34 INFO] error_code=insufficient_quota error_message='You exceeded your current quota, please check your plan and billing details.' error_param=None error_type=insufficient_quota message='OpenAI API error received' stream_error=False
[2023-06-10 03:37:42 INFO] error_code=insufficient_quota error_message='You exceeded your current quota, please check your plan and billing details.' error_param=None error_type=insufficient_quota message='OpenAI API error received' stream_error=False

View File

@ -0,0 +1 @@
[Write a Python program that generates company business card.Your program should accept name,title and email information entered by the user. Then, the designed business card image should contain these three pieces of information.I hope there will be a unified slogan in the lower right corner of the business card: AGI For Lives and there here is a company name in the upper right corner: ModelBest. Finally, the program should save the business card image to a file, allowing the user to specify the file name and format (e.g., PNG, JPG).Make sure to provide a user-friendly interface that guides the user through the process of inputting the data and specifying the file name and format for the business card image. Test your program with various inputs to ensure it generates valid business card and handles different data types gracefully.]

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,61 @@
'''
This is the main file that runs the business card generator program.
'''
import tkinter as tk
from tkinter import filedialog
from PIL import Image, ImageDraw, ImageFont
class BusinessCardGenerator:
def __init__(self):
self.root = tk.Tk()
self.root.title("Business Card Generator")
self.name_label = tk.Label(self.root, text="Name:")
self.name_label.pack()
self.name_entry = tk.Entry(self.root)
self.name_entry.pack()
self.title_label = tk.Label(self.root, text="Title:")
self.title_label.pack()
self.title_entry = tk.Entry(self.root)
self.title_entry.pack()
self.email_label = tk.Label(self.root, text="Email:")
self.email_label.pack()
self.email_entry = tk.Entry(self.root)
self.email_entry.pack()
self.generate_button = tk.Button(self.root, text="Generate", command=self.generate_business_card)
self.generate_button.pack()
self.root.mainloop()
def generate_business_card(self):
name = self.name_entry.get()
title = self.title_entry.get()
email = self.email_entry.get()
image = Image.new("RGB", (500, 300), (53, 154, 256))
draw = ImageDraw.Draw(image)
# Draw company name
company_name = "ModelBest"
company_name_font = ImageFont.truetype("/Library/Fonts/Arial Unicode.ttf", 24)
company_name_width, company_name_height = draw.textsize(company_name, font=company_name_font)
draw.text((400 - company_name_width, 20), company_name, font=company_name_font, fill="black")
# Draw name
name_font = ImageFont.truetype("/Library/Fonts/Arial Unicode.ttf", 18)
name_width, name_height = draw.textsize(name, font=name_font)
draw.text((20, 100), name, font=name_font, fill="black")
# Draw title
title_font = ImageFont.truetype("/Library/Fonts/Arial Unicode.ttf", 14)
title_width, title_height = draw.textsize(title, font=title_font)
draw.text((20, 140), title, font=title_font, fill="black")
# Draw email
email_font = ImageFont.truetype("/Library/Fonts/Arial Unicode.ttf", 14)
email_width, email_height = draw.textsize(email, font=email_font)
draw.text((20, 180), email, font=email_font, fill="black")
# Draw slogan
slogan = "AGI For Lives"
slogan_font = ImageFont.truetype("/Library/Fonts/Arial Unicode.ttf", 12)
slogan_width, slogan_height = draw.textsize(slogan, font=slogan_font)
draw.text((400 - slogan_width, 280 - slogan_height), slogan, font=slogan_font, fill="black")
file_path = filedialog.asksaveasfilename(defaultextension=".png", filetypes=[("PNG Image", "*.png"), ("JPEG Image", "*.jpg")])
if file_path:
image.save(file_path)
print("Business card saved successfully!")
else:
print("Business card not saved.")
if __name__ == "__main__":
BusinessCardGenerator()

View File

@ -0,0 +1,65 @@
# ChatDev Business Card Generator User Manual
## Introduction
Welcome to the ChatDev Business Card Generator! This software allows you to easily generate professional business cards with customized information. The generated business card will include the name, title, and email information provided by the user. Additionally, the business card will feature the company name "ModelBest" in the upper right corner and the slogan "AGI For Lives" in the lower right corner.
## Installation
To use the ChatDev Business Card Generator, you need to have Python installed on your computer. You can download Python from the official website: [https://www.python.org/downloads/](https://www.python.org/downloads/)
Once Python is installed, you can follow these steps to install the necessary dependencies:
1. Open a terminal or command prompt.
2. Navigate to the directory where you have saved the "main.py" file.
3. Run the following command to install the required dependencies:
```bash
pip install tkinter pillow
```
## Usage
To generate a business card using the ChatDev Business Card Generator, follow these steps:
1. Open a terminal or command prompt.
2. Navigate to the directory where you have saved the "main.py" file.
3. Run the following command to start the program:
```bash
python main.py
```
4. A window will appear with input fields for the name, title, and email. Enter the required information in the respective fields.
5. Click the "Generate" button to create the business card.
6. A file dialog will open, allowing you to choose the file name and format (PNG or JPG) for the business card image. Select the desired options and click "Save".
7. The business card image will be saved to the specified file location.
8. You will see a message indicating whether the business card was saved successfully or not.
## Example
Here is an example of how to use the ChatDev Business Card Generator:
1. Open a terminal or command prompt.
2. Navigate to the directory where you have saved the "main.py" file.
3. Run the following command to start the program:
```bash
python main.py
```
4. Enter the following information in the input fields:
- Name: John Doe
- Title: Software Engineer
- Email: john.doe@example.com
5. Click the "Generate" button.
6. Choose a file name and format for the business card image (e.g., "business_card.png").
7. Click "Save".
8. The business card image will be saved to the specified file location.
9. You will see a message indicating that the business card was saved successfully.
## Conclusion
Congratulations! You have successfully generated a professional business card using the ChatDev Business Card Generator. Feel free to experiment with different inputs and formats to create unique business cards for yourself or your colleagues. If you have any questions or encounter any issues, please don't hesitate to reach out to our support team for assistance. Happy generating!

View File

@ -0,0 +1,30 @@
Task:
[Write a Python program that generates company business card.Your program should accept name,title and email information entered by the user. Then, the designed business card image should contain these three pieces of information.I hope there will be a unified slogan in the lower right corner of the business card: AGI For Lives and there here is a company name in the upper right corner: ModelBest. Finally, the program should save the business card image to a file, allowing the user to specify the file name and format (e.g., PNG, JPG).Make sure to provide a user-friendly interface that guides the user through the process of inputting the data and specifying the file name and format for the business card image. Test your program with various inputs to ensure it generates valid business card and handles different data types gracefully.]
Config:
ChatEnvConfig.clear_structure: True
ChatEnvConfig.git_management: False
ChatEnvConfig.gui_design: True
Roster:
Chief Executive Officer, Counselor, Chief Human Resource Officer, Chief Product Officer, Chief Technology Officer, Programmer, Code Reviewer, Software Test Engineer, Chief Creative Officer
Modality:
image
Ideas:
Language:
Python
Code_Version:
4.0
Proposed_images:
0
Incorporated_images:
0

View File

@ -0,0 +1 @@
Design a software that allows users to input several strings. Then the user randomly chooses one.

View File

@ -0,0 +1,26 @@
'''
Design a software that allows users to input several strings. Then the user randomly chooses one.
'''
from tkinter import Tk, Label, Entry, Button
import random
# Create a Tkinter window
window = Tk()
window.title("String Chooser")
# Create a label to prompt the user for input
label = Label(window, text="Enter strings (separated by commas):")
label.pack()
# Create an entry field for the user to input strings
entry = Entry(window)
entry.pack()
# Create a button to trigger the random selection
def choose_string():
strings = entry.get().split(",")
chosen_string = random.choice(strings)
result_label.config(text=f"Randomly chosen string: {chosen_string}")
button = Button(window, text="Choose", command=choose_string)
button.pack()
# Create a label to display the randomly chosen string
result_label = Label(window, text="")
result_label.pack()
# Run the Tkinter event loop
window.mainloop()

View File

@ -0,0 +1,55 @@
# String Chooser User Manual
## Introduction
The String Chooser software is a web application designed to allow users to input several strings and randomly choose one. This user manual will guide you through the installation process, explain the main functions of the software, and provide instructions on how to use it.
## Installation
To use the String Chooser software, you need to have Python installed on your machine. Follow these steps to install the necessary dependencies:
1. Open a terminal or command prompt.
2. Navigate to the directory where you have downloaded the software files.
3. Run the following command to install the required dependencies:
```
pip install -r requirements.txt
```
## Usage
Once you have installed the necessary dependencies, you can start using the String Chooser software. Follow these steps to use the software:
1. Open a terminal or command prompt.
2. Navigate to the directory where you have downloaded the software files.
3. Run the following command to start the web application:
```
python main.py
```
4. A window titled "String Chooser" will appear.
5. Enter the strings you want to choose from in the input field, separated by commas.
6. Click the "Choose" button to randomly select one of the strings.
7. The randomly chosen string will be displayed below the input field.
## Example
Let's walk through an example to illustrate how to use the String Chooser software:
1. Open a terminal or command prompt.
2. Navigate to the directory where you have downloaded the software files.
3. Run the following command to start the web application:
```
python main.py
```
4. The "String Chooser" window will appear.
5. Enter the following strings in the input field: "apple, banana, orange".
6. Click the "Choose" button.
7. The randomly chosen string will be displayed below the input field. For example, it might show "banana".
## Conclusion
The String Chooser software provides a simple and convenient way to input several strings and randomly choose one. By following the installation instructions and using the software as described in this user manual, you can easily accomplish this task. Enjoy using the String Chooser!

View File

@ -1,5 +1,5 @@
Task:
show me a simple demo
Design a software that allows users to input several strings. Then the user randomly chooses one.
Config:
ChatEnvConfig.clear_structure: True
@ -11,7 +11,7 @@ Roster:
Chief Executive Officer, Counselor, Chief Human Resource Officer, Chief Product Officer, Chief Technology Officer, Programmer, Code Reviewer, Software Test Engineer, Chief Creative Officer
Modality:
website
web application
Ideas:

View File

@ -0,0 +1 @@
tkinter==8.6

View File

@ -1,13 +0,0 @@
import tkinter as tk
class DemoGUI:
def __init__(self, root):
self.root = root
self.root.title("Demo GUI")
self.create_widgets()
def create_widgets(self):
self.label = tk.Label(self.root, text="Hello, World!")
self.label.pack()
self.button = tk.Button(self.root, text="Click Me", command=self.button_clicked)
self.button.pack()
def button_clicked(self):
self.label.config(text="Button Clicked!")

View File

@ -1,11 +0,0 @@
'''
This is the main file that runs the demo.
'''
import tkinter as tk
from demo_gui import DemoGUI
def main():
root = tk.Tk()
demo_gui = DemoGUI(root)
root.mainloop()
if __name__ == "__main__":
main()

View File

@ -1,55 +0,0 @@
# ChatDev Demo
## Introduction
Welcome to ChatDev Demo! This software is a simple demo that showcases a basic graphical user interface (GUI) using Python and the tkinter library. In this manual, you will find instructions on how to install the necessary dependencies and how to use the software.
## Installation
To install the required dependencies, please follow these steps:
1. Ensure that you have Python installed on your system. If not, you can download and install Python from the official website: [Python Downloads](https://www.python.org/downloads/)
2. Open a terminal or command prompt.
3. Navigate to the directory where you have saved the demo files.
4. Run the following command to install the dependencies:
```shell
pip install -r requirements.txt
```
5. Wait for the installation to complete.
## Usage
To run the ChatDev Demo, please follow these steps:
1. Open a terminal or command prompt.
2. Navigate to the directory where you have saved the demo files.
3. Run the following command to start the demo:
```shell
python main.py
```
4. A GUI window will open with a label displaying "Hello, World!" and a button labeled "Click Me".
5. Click the "Click Me" button to see the label text change to "Button Clicked!".
6. You can close the GUI window by clicking the close button or by pressing the "X" button.
## Conclusion
Congratulations! You have successfully installed and used the ChatDev Demo. This simple demo showcases the basic functionality of a GUI using Python and the tkinter library. Feel free to explore and modify the code to create your own GUI applications.
If you have any questions or need further assistance, please don't hesitate to reach out to our support team. We are here to help you.
Happy coding!
---
Note: This manual is written in Markdown format. You can use any Markdown editor or viewer to read and format the content.

View File

@ -1 +0,0 @@
show me a simple demo