zej97 commited on
Commit
5b45741
1 Parent(s): 0f8c9e4

Upload folder using huggingface_hub

Browse files
README.md CHANGED
@@ -3,7 +3,6 @@ title: AI-Research-Assistant
3
  app_file: app.py
4
  sdk: gradio
5
  sdk_version: 3.38.0
6
- duplicated_from: zej97/AI-Research-Assistant
7
  ---
8
  <div style="width: 100%;">
9
  <img src="./statics/title.svg" style="width: 100%;">
@@ -13,8 +12,9 @@ duplicated_from: zej97/AI-Research-Assistant
13
  </div>
14
  </div>
15
 
16
- > **15th Aug, 2023 Fix: HttpError. (Sorry for the late update. I'm currently working on my dissertation...)**
17
- > **21th Aug, 2023 Fix: Report History is only displayed after clicking and will be rest after refreshing.**
 
18
 
19
 
20
  Inspired by [gpt-researcher](https://github.com/assafelovic/gpt-researcher). This project endeavors to develop an AI research assistant capable of **generating research reports** effortlessly for researchers. For instance, researchers can request the AI research assistant to compose a report on *the latest advancements in the field of superconductors as of 2023*, which is currently a trending topic. The AI research assistant will subsequently compile a report based on the relevant information obtained from the internet. Now, AIRA also offers support for **academic English polishing**.
 
3
  app_file: app.py
4
  sdk: gradio
5
  sdk_version: 3.38.0
 
6
  ---
7
  <div style="width: 100%;">
8
  <img src="./statics/title.svg" style="width: 100%;">
 
12
  </div>
13
  </div>
14
 
15
+ > **25th Aug, 2023 Feature: [Adding TextArea for custom prompts](https://github.com/paradoxtown/AI-Research-Assistant/pull/1)**
16
+ > **21th Aug, 2023 Fix: Report history is only displayed after clicking and will be reset after refreshing.**
17
+ > **15th Aug, 2023 Fix: HttpError. (Sorry for the late update. I'm currently working on my dissertation...)** <br>
18
 
19
 
20
  Inspired by [gpt-researcher](https://github.com/assafelovic/gpt-researcher). This project endeavors to develop an AI research assistant capable of **generating research reports** effortlessly for researchers. For instance, researchers can request the AI research assistant to compose a report on *the latest advancements in the field of superconductors as of 2023*, which is currently a trending topic. The AI research assistant will subsequently compile a report based on the relevant information obtained from the internet. Now, AIRA also offers support for **academic English polishing**.
__pycache__/app.cpython-311.pyc CHANGED
Binary files a/__pycache__/app.cpython-311.pyc and b/__pycache__/app.cpython-311.pyc differ
 
agent/__pycache__/prompts.cpython-311.pyc CHANGED
Binary files a/agent/__pycache__/prompts.cpython-311.pyc and b/agent/__pycache__/prompts.cpython-311.pyc differ
 
agent/__pycache__/research_agent.cpython-311.pyc CHANGED
Binary files a/agent/__pycache__/research_agent.cpython-311.pyc and b/agent/__pycache__/research_agent.cpython-311.pyc differ
 
agent/prompts.py CHANGED
@@ -25,7 +25,7 @@ def generate_agent_role_prompt(agent):
25
  return prompts.get(agent, "No such agent")
26
 
27
 
28
- def generate_report_prompt(question, research_summary):
29
  """ Generates the report prompt for the given question and research summary.
30
  Args: question (str): The question to generate the report prompt for
31
  research_summary (str): The research summary to generate the report prompt for
@@ -36,7 +36,8 @@ def generate_report_prompt(question, research_summary):
36
  f' question or topic: "{question}" in a detailed report --'\
37
  " The report should focus on the answer to the question, should be well structured, informative, detailed" \
38
  " in depth, with facts and numbers if available, a minimum of 2,400 words and with markdown syntax and apa format. "\
39
- "Write all source urls at the end of the report in apa format."
 
40
 
41
 
42
  def generate_search_queries_prompt(question):
@@ -49,7 +50,7 @@ def generate_search_queries_prompt(question):
49
  'You must respond with a list of strings in the following json format: {"Q1": query1, "Q2": query2, "Q3": query3, "Q4": query4, "Q5": query5}'
50
 
51
 
52
- def generate_resource_report_prompt(question, research_summary):
53
  """Generates the resource report prompt for the given question and research summary.
54
 
55
  Args:
@@ -65,10 +66,11 @@ def generate_resource_report_prompt(question, research_summary):
65
  ' Focus on the relevance, reliability, and significance of each source.' \
66
  ' Ensure that the report is well-structured, informative, in-depth, and follows Markdown syntax.' \
67
  ' Include relevant facts, figures, and numbers whenever available.' \
68
- ' The report should have a minimum length of 1,200 words.'
 
69
 
70
 
71
- def generate_outline_report_prompt(question, research_summary):
72
  """ Generates the outline report prompt for the given question and research summary.
73
  Args: question (str): The question to generate the outline report prompt for
74
  research_summary (str): The research summary to generate the outline report prompt for
@@ -79,10 +81,11 @@ def generate_outline_report_prompt(question, research_summary):
79
  f' for the following question or topic: "{question}". The outline should provide a well-structured framework'\
80
  ' for the research report, including the main sections, subsections, and key points to be covered.' \
81
  ' The research report should be detailed, informative, in-depth, and a minimum of 1,200 words.' \
82
- ' Use appropriate Markdown syntax to format the outline and ensure readability.'
 
83
 
84
 
85
- def generate_concepts_prompt(question, research_summary):
86
  """ Generates the concepts prompt for the given question.
87
  Args: question (str): The question to generate the concepts prompt for
88
  research_summary (str): The research summary to generate the concepts prompt for
@@ -91,7 +94,8 @@ def generate_concepts_prompt(question, research_summary):
91
 
92
  return f'"""{research_summary}""" Using the above information, generate a list of 5 main concepts to learn for a research report'\
93
  f' on the following question or topic: "{question}". The outline should provide a well-structured framework'\
94
- 'You must respond with a list of strings in the following format: ["concepts 1", "concepts 2", "concepts 3", "concepts 4, concepts 5"]'
 
95
 
96
 
97
  def generate_lesson_prompt(concept):
 
25
  return prompts.get(agent, "No such agent")
26
 
27
 
28
+ def generate_report_prompt(question, research_summary, extra_prompt=""):
29
  """ Generates the report prompt for the given question and research summary.
30
  Args: question (str): The question to generate the report prompt for
31
  research_summary (str): The research summary to generate the report prompt for
 
36
  f' question or topic: "{question}" in a detailed report --'\
37
  " The report should focus on the answer to the question, should be well structured, informative, detailed" \
38
  " in depth, with facts and numbers if available, a minimum of 2,400 words and with markdown syntax and apa format. "\
39
+ "Write all source urls at the end of the report in apa format."\
40
+ f'{extra_prompt}'
41
 
42
 
43
  def generate_search_queries_prompt(question):
 
50
  'You must respond with a list of strings in the following json format: {"Q1": query1, "Q2": query2, "Q3": query3, "Q4": query4, "Q5": query5}'
51
 
52
 
53
+ def generate_resource_report_prompt(question, research_summary, extra_prompt):
54
  """Generates the resource report prompt for the given question and research summary.
55
 
56
  Args:
 
66
  ' Focus on the relevance, reliability, and significance of each source.' \
67
  ' Ensure that the report is well-structured, informative, in-depth, and follows Markdown syntax.' \
68
  ' Include relevant facts, figures, and numbers whenever available.' \
69
+ ' The report should have a minimum length of 1,200 words.'\
70
+ f'{extra_prompt}'
71
 
72
 
73
+ def generate_outline_report_prompt(question, research_summary, extra_prompt):
74
  """ Generates the outline report prompt for the given question and research summary.
75
  Args: question (str): The question to generate the outline report prompt for
76
  research_summary (str): The research summary to generate the outline report prompt for
 
81
  f' for the following question or topic: "{question}". The outline should provide a well-structured framework'\
82
  ' for the research report, including the main sections, subsections, and key points to be covered.' \
83
  ' The research report should be detailed, informative, in-depth, and a minimum of 1,200 words.' \
84
+ ' Use appropriate Markdown syntax to format the outline and ensure readability.'\
85
+ f'{extra_prompt}'
86
 
87
 
88
+ def generate_concepts_prompt(question, research_summary, extra_prompt):
89
  """ Generates the concepts prompt for the given question.
90
  Args: question (str): The question to generate the concepts prompt for
91
  research_summary (str): The research summary to generate the concepts prompt for
 
94
 
95
  return f'"""{research_summary}""" Using the above information, generate a list of 5 main concepts to learn for a research report'\
96
  f' on the following question or topic: "{question}". The outline should provide a well-structured framework'\
97
+ 'You must respond with a list of strings in the following format: ["concepts 1", "concepts 2", "concepts 3", "concepts 4, concepts 5"]'\
98
+ f'{extra_prompt}'
99
 
100
 
101
  def generate_lesson_prompt(concept):
agent/research_agent.py CHANGED
@@ -11,23 +11,23 @@ CFG = Config()
11
 
12
 
13
  class ResearchAgent:
14
- def __init__(self, question, agent):
15
  """ Initializes the research assistant with the given question.
16
  Args: question (str): The question to research
17
  Returns: None
18
  """
19
-
20
  self.question = question
21
  self.agent = agent
22
  self.visited_urls = set()
23
  self.search_summary = ""
24
  self.directory_name = ''.join(c for c in question if c.isascii() and c not in string.punctuation)[:100]
25
  self.dir_path = os.path.dirname(f"./outputs/{self.directory_name}/")
 
26
 
27
  def call_agent(self, action):
28
  messages = [{
29
  "role": "system",
30
- "content": prompts.generate_agent_role_prompt(self.agent),
31
  }, {
32
  "role": "user",
33
  "content": action,
@@ -40,7 +40,7 @@ class ResearchAgent:
40
  def call_agent_stream(self, action):
41
  messages = [{
42
  "role": "system",
43
- "content": prompts.generate_agent_role_prompt(self.agent),
44
  }, {
45
  "role": "user",
46
  "content": action,
@@ -93,17 +93,19 @@ class ResearchAgent:
93
  search_queries = self.create_search_queries()
94
  for _, query in search_queries.items():
95
  search_result = self.run_search_summary(query)
96
- self.search_summary += f"=Query=:\n{query}\n=Search Result=:\n{search_result}\n================\n"
 
97
 
98
  return self.search_summary
99
 
100
- def write_report(self, report_type):
101
  """ Writes the report for the given question.
102
  Args: None
103
  Returns: str: The report for the given question
104
  """
105
- # yield "Searching online..."
106
 
107
  report_type_func = prompts.get_report_by_type(report_type)
108
 
109
- yield from self.call_agent_stream(report_type_func(self.question, self.search_online()))
 
 
 
11
 
12
 
13
  class ResearchAgent:
14
+ def __init__(self, question, agent, system_prompt):
15
  """ Initializes the research assistant with the given question.
16
  Args: question (str): The question to research
17
  Returns: None
18
  """
 
19
  self.question = question
20
  self.agent = agent
21
  self.visited_urls = set()
22
  self.search_summary = ""
23
  self.directory_name = ''.join(c for c in question if c.isascii() and c not in string.punctuation)[:100]
24
  self.dir_path = os.path.dirname(f"./outputs/{self.directory_name}/")
25
+ self.system_prompt = system_prompt
26
 
27
  def call_agent(self, action):
28
  messages = [{
29
  "role": "system",
30
+ "content": self.system_prompt,
31
  }, {
32
  "role": "user",
33
  "content": action,
 
40
  def call_agent_stream(self, action):
41
  messages = [{
42
  "role": "system",
43
+ "content": self.system_prompt,
44
  }, {
45
  "role": "user",
46
  "content": action,
 
93
  search_queries = self.create_search_queries()
94
  for _, query in search_queries.items():
95
  search_result = self.run_search_summary(query)
96
+ self.search_summary += \
97
+ f"=Query=:\n{query}\n=Search Result=:\n{search_result}\n================\n"
98
 
99
  return self.search_summary
100
 
101
+ def write_report(self, report_type, extra_prompt):
102
  """ Writes the report for the given question.
103
  Args: None
104
  Returns: str: The report for the given question
105
  """
 
106
 
107
  report_type_func = prompts.get_report_by_type(report_type)
108
 
109
+ yield from self.call_agent_stream(report_type_func(self.question,
110
+ self.search_online(),
111
+ extra_prompt))
app.py CHANGED
@@ -6,6 +6,7 @@ from datetime import datetime, timezone
6
  from config import check_openai_api_key
7
  from agent.research_agent import ResearchAgent
8
  from agent.toolkits import english_polishing
 
9
  from statics.style import *
10
 
11
 
@@ -26,12 +27,11 @@ def load_report_history():
26
  open(REPORT_HISTORY_FILE_PATH, "w").close()
27
  return report_history_buffer
28
 
29
-
30
- def run_agent(task, agent, report_type):
31
  global report_history_tasks
32
  report_history_tasks.append(task)
33
- assistant = ResearchAgent(task, agent)
34
- yield from assistant.write_report(report_type)
35
 
36
 
37
  with gr.Blocks(theme=gr.themes.Base(),
@@ -64,8 +64,34 @@ with gr.Blocks(theme=gr.themes.Base(),
64
  choices=["Research Report",
65
  "Resource Report",
66
  "Outline Report"])
67
-
68
  input_box = gr.Textbox(label="# What would you like to research next?", placeholder="Enter your question here")
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
69
  submit_btn = gr.Button("Generate Report", elem_id="primary-btn")
70
 
71
  gr.Examples(["Should I invest in the Large Language Model industry in 2023?",
@@ -80,7 +106,7 @@ with gr.Blocks(theme=gr.themes.Base(),
80
  def store_report(content):
81
  global report_history_tasks, report_history_buffer
82
  report_task = report_history_tasks[-1][:min(100, len(report_history_tasks[-1]))]
83
- time_stamp = datetime.now(timezone.utc).strftime("%Y-%m-%d %H:%M:%S %P")
84
  new_report = f'<details> \
85
  <summary>UTC {time_stamp}: \
86
  <i>{report_task}</i></summary> \
@@ -91,7 +117,7 @@ with gr.Blocks(theme=gr.themes.Base(),
91
  f.write(new_report)
92
  return report_history_buffer
93
 
94
- submit_btn.click(run_agent, inputs=[input_box, agent_type, report_type], outputs=report)\
95
  .then(store_report, inputs=[report], outputs=report_history)
96
 
97
  with gr.Tab("✒️English Polishing"):
 
6
  from config import check_openai_api_key
7
  from agent.research_agent import ResearchAgent
8
  from agent.toolkits import english_polishing
9
+ from agent import prompts
10
  from statics.style import *
11
 
12
 
 
27
  open(REPORT_HISTORY_FILE_PATH, "w").close()
28
  return report_history_buffer
29
 
30
+ def run_agent(task, agent_type, report_type, system_prompt, extra_prompt):
 
31
  global report_history_tasks
32
  report_history_tasks.append(task)
33
+ assistant = ResearchAgent(task, agent_type, system_prompt)
34
+ yield from assistant.write_report(report_type, extra_prompt)
35
 
36
 
37
  with gr.Blocks(theme=gr.themes.Base(),
 
64
  choices=["Research Report",
65
  "Resource Report",
66
  "Outline Report"])
67
+
68
  input_box = gr.Textbox(label="# What would you like to research next?", placeholder="Enter your question here")
69
+
70
+ with gr.Accordion("# Advanced Settings", open=False):
71
+ system_prompt = gr.TextArea(label="Agent Prompt",
72
+ value=prompts.generate_agent_role_prompt(agent_type.value),
73
+ interactive=True,
74
+ show_copy_button=True)
75
+ report_type_prompt = gr.TextArea(label="Report Prompt (not editable)",
76
+ value=prompts.generate_report_prompt(f'{input_box.value}', report_type.value),
77
+ interactive=False,
78
+ show_copy_button=True)
79
+ extra_prompt = gr.TextArea(label="Extra Prompt", interactive=True, show_copy_button=True)
80
+
81
+ def on_select_agent(evt: gr.SelectData):
82
+ return f"{prompts.generate_agent_role_prompt(evt.value)}"
83
+
84
+ def on_select_input_box(input, report_type):
85
+ return f"{prompts.generate_report_prompt(f'{input}', report_type)}"
86
+
87
+ def on_select_report_type(evt: gr.SelectData, input_box):
88
+ return f"{prompts.generate_report_prompt(f'{input_box}', evt.value)}"
89
+
90
+
91
+ agent_type.select(on_select_agent, None, system_prompt)
92
+ input_box.input(on_select_input_box, inputs=[input_box, report_type], outputs=report_type_prompt)
93
+ report_type.select(on_select_report_type, inputs=[input_box], outputs=report_type_prompt)
94
+
95
  submit_btn = gr.Button("Generate Report", elem_id="primary-btn")
96
 
97
  gr.Examples(["Should I invest in the Large Language Model industry in 2023?",
 
106
  def store_report(content):
107
  global report_history_tasks, report_history_buffer
108
  report_task = report_history_tasks[-1][:min(100, len(report_history_tasks[-1]))]
109
+ time_stamp = datetime.now(timezone.utc).strftime("%Y-%m-%d %H:%M:%S %p")
110
  new_report = f'<details> \
111
  <summary>UTC {time_stamp}: \
112
  <i>{report_task}</i></summary> \
 
117
  f.write(new_report)
118
  return report_history_buffer
119
 
120
+ submit_btn.click(run_agent, inputs=[input_box, agent_type, report_type, system_prompt, extra_prompt], outputs=report)\
121
  .then(store_report, inputs=[report], outputs=report_history)
122
 
123
  with gr.Tab("✒️English Polishing"):
outputs/Background and Literature survey of Medical Image Analysis Im going to use CNN and RNN as models/research--6923061152256674564.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ [{"title": "Convolutional Neural Network in Medical Image Analysis: A Review - Springer", "href": "https://link.springer.com/article/10.1007/s11831-023-09898-w", "body": "The application of CNNs in medical image analysis, such as its use for brain magnetic resonance imaging (MRI) analysis, pre-processing, segmentation, data preparation, and post-processing were the main areas of focus. We further explored large-scale retrieval, which can increase MRI image processing efficiency."}, {"title": "CNN or RNN: Review and Experimental Comparison on Image Classification ...", "href": "https://ieeexplore.ieee.org/abstract/document/10065984", "body": "The experimental results of training and testing on those two datasets shows that CNN model is better than RNN model in image classification. Published in: 2022 IEEE 8th International Conference on Computer and Communications (ICCC) Article #: Date of Conference: 09-12 December 2022 Date Added to IEEE Xplore: 20 March 2023 ISBN Information:"}, {"title": "CNN vs. RNN: How are they different? | TechTarget", "href": "https://www.techtarget.com/searchenterpriseai/feature/CNN-vs-RNN-How-they-differ-and-where-they-overlap", "body": "The main differences between CNNs and RNNs include the following: CNNs are commonly used to solve problems involving spatial data, such as images. RNNs are better suited to analyzing temporal and sequential data, such as text or videos. CNNs and RNNs have different architectures."}]
outputs/Background and Literature survey of Medical Image Analysis Im going to use CNN and RNN as models/research-5592575591713378695.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ [{"title": "Machine Learning for Medical Image Analysis: A Survey", "href": "https://link.springer.com/chapter/10.1007/978-3-031-35248-5_14", "body": "Because the medical image is so large, it must be compressed utilizing diverse machine learning and deep learning approaches while preserving the regions of interest. In , a combined lossy and lossless compression as a hybrid method using discrete walvet transform and recurrent neural network on brain images exactly like CT and MRI image. Thus ..."}, {"title": "Medical Image Analysis Using Machine Learning and Deep ... - Springer", "href": "https://link.springer.com/chapter/10.1007/978-981-19-4189-4_10", "body": "The DL follows a hierarchical order where the data of the input layer is transformed into a more abstract level to feed into the next level of the hierarchy. The DL uses a plethora of classifiers comprising Recurrent Neural Network (RNN), Convolutional Neural Network (CNN), Boltzmann machine, autoencoders, and Deep Belief Network (DBN)."}, {"title": "Recurrent Neural Networks in Medical Data Analysis and ... - ResearchGate", "href": "https://www.researchgate.net/publication/301244363_Recurrent_Neural_Networks_in_Medical_Data_Analysis_and_Classifications", "body": "Abstract. This chapter discusses dynamical neural network architectures for the classification of medical data. Various researches have indicated that recurrent neural networks such as the Elman ..."}]
outputs/Background and Literature survey of Medical Image Analysis Im going to use CNN and RNN as models/research-6026870446088756682.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ [{"title": "Convolutional Neural Network in Medical Image Analysis: A Review - Springer", "href": "https://link.springer.com/article/10.1007/s11831-023-09898-w", "body": "Convolutional neural networks (CNNs) have been used for visual applications since the late 1980s. Despite a few scattered applications, their implication was dormant until the mid-2000s."}, {"title": "Convolutional Neural Networks for Medical Image Analysis: Full Training ...", "href": "https://pubmed.ncbi.nlm.nih.gov/26978662/", "body": "Abstract. Training a deep convolutional neural network (CNN) from scratch is difficult because it requires a large amount of labeled training data and a great deal of expertise to ensure proper convergence. A promising alternative is to fine-tune a CNN that has been pre-trained using, for instance, a large set of labeled natural images."}, {"title": "Convolutional Neural Networks for Medical Image Analysis: Full Training ...", "href": "https://arxiv.org/pdf/1706.00712", "body": "natural language processing to hyperspectral image processing and to medical image analysis. The main power of a CNN lies in its deep architecture [5]-[8], which allows for extracting a set of discriminating features at multiple levels of abstraction. However, training a deep CNN from scratch (or full train-ing) is not without complications [9]."}]
outputs/Background and Literature survey of Medical Image Analysis Im going to use CNN and RNN as models/research-7090681488745839375.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ [{"title": "Recent advances and clinical applications of deep learning in medical image analysis ", "href": "https://pubmed.ncbi.nlm.nih.gov/35472844/", "body": "Recent advances and clinical applications of deep learning in medical image analysis Med Image Anal. 2022 Jul;79:102444. doi: 10.1016/j ... Despite the success, the further improvement of deep learning models in medical image analysis is majorly bottlenecked by the lack of large-sized and well-annotated datasets. In the past five years, many ..."}, {"title": "Recent advances and clinical applications of deep learning in medical ...", "href": "https://arxiv.org/abs/2105.13381v3", "body": "Despite the success, the further improvement of deep learning models in medical image analysis is majorly bottlenecked by the lack of large-sized and well-annotated datasets. In the past five years, many studies have focused on addressing this challenge. In this paper, we reviewed and summarized these recent studies to provide a comprehensive ..."}, {"title": "Self-supervised learning for medical image classification: a ... - Nature", "href": "https://www.nature.com/articles/s41746-023-00811-0", "body": "Advancements in deep learning and computer vision provide promising solutions for medical image analysis, potentially improving healthcare and patient outcomes."}]
outputs/Background and Literature survey of Medical Image Analysis Im going to use CNN and RNN as models/research-8704929616903110272.txt ADDED
@@ -0,0 +1 @@
 
 
1
+ [{"title": "MEDIA | Medical Image Analysis | Journal - ScienceDirect", "href": "https://www.sciencedirect.com/journal/medical-image-analysis", "body": "About the journal. Medical Image Analysis provides a forum for the dissemination of new research results in the field of medical and biological image analysis, with special emphasis on efforts related to the applications of computer vision, virtual reality and robotics to biomedical imaging problems. The journal publishes the highest quality ..."}, {"title": "Convolutional Neural Network in Medical Image Analysis: A Review - Springer", "href": "https://link.springer.com/article/10.1007/s11831-023-09898-w", "body": "Medical image analysis helps in resolving clinical issues by examining clinically generated images. In today's world of deep learning (DL) along with advances in computer vision, the available medical imaging data from scientific archives, academic publications, and clinical manuals along with advances in computer vision, present an opportunity could be of great use. The implication of ..."}, {"title": "Critical Analysis of the Current Medical Image-Based Processing ...", "href": "https://pubmed.ncbi.nlm.nih.gov/36146414/", "body": "Critical Analysis of the Current Medical Image-Based Processing Techniques for Automatic Disease Evaluation: Systematic Literature Review Sensors (Basel). 2022 Sep 18;22(18):7065.doi: 10.3390/s22187065. Authors Baidaa Mutasher Rashed 1 , Nirvana Popescu 1 Affiliation "}]
test/__pycache__/test_textbox.cpython-311.pyc ADDED
Binary file (606 Bytes). View file
 
test/test_textbox.py ADDED
@@ -0,0 +1,7 @@
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+
3
+
4
+ with gr.Blocks() as demo:
5
+ textbox = gr.Textbox(label="Enter your name", value="<h1> Word </h1>")
6
+
7
+ demo.launch()