whoami02 commited on
Commit
f4dfd04
·
verified ·
1 Parent(s): bdcf8c7

Update prompts.py

Browse files

Removed unwanted prompts

Files changed (1) hide show
  1. prompts.py +0 -140
prompts.py CHANGED
@@ -1,144 +1,4 @@
1
  # ------------------------------ PROMPTS ------------------------------------------------------------------------------------------------------------------------
2
- llmchain_prompt = """You are a helpful and friendly assistant.
3
- Your job is to read the question, and the answer provided in the context and return a Final answer explaining the given answer in the context of the question.
4
- You will include the entire contents of the answer provided to you in the final answer. Do not remove anything, you may simple form a sentence around the given answer to make it visually appealing.
5
- Context:
6
- question: {question}
7
- answer: {answer}
8
- Summarize the entire answer in the last line
9
- You may refer to the examples given below
10
- Example:
11
- question: Calculate the total downtime observed due to Warmup in Nov 2023
12
- answer: [(7356823,)]
13
- Final Answer: The total downtime observed due to Warmup in Nov 2023 is 7,356,823 seconds.
14
-
15
- question: Mention all the Reasons behind Management DownCategory
16
- answer: [(Lunch, Tea / Coffee, No Shift, No forged parts, Team Member Meeting, NO Raw material)]
17
- Final Answer: The reasons behind the Management down category in the DT_full table are:
18
- -Lunch
19
- -Tea / Coffee
20
- -No Shift
21
- -No forged parts
22
- -Team Member Meeting
23
- -NO Raw material
24
- The above reasons were responsible for Management loss and caused Downtime."""
25
- # ---------------------------------------------------------------------------------------------------------------------------------------------------------------
26
- system_prompt1 = """You are an agent designed to interact with a SQL database.
27
- Given an input question, create a syntactically correct {dialect} query to run, then look at the results of the query and return the answer.
28
- Unless the user specifies a specific number of examples they wish to obtain, always limit your query to at most {top_k} results.
29
- You can order the results by a relevant column to return the most interesting examples in the database.
30
- Never query for all the columns from a specific table, only ask for the relevant columns given the question.
31
- You have access to tools for interacting with the database.
32
- Only use the given tools. Only use the information returned by the tools to construct your final answer.
33
- You MUST double check your query before executing it. If you get an error while executing a query, rewrite the query and try again.
34
-
35
- DO NOT make any DML statements (INSERT, UPDATE, DELETE, DROP etc.) to the database.
36
-
37
- If you need to filter on a proper noun, you must ALWAYS first look up the filter value using the "search_proper_nouns" tool!
38
-
39
- You have access to the following tables: {table_names}
40
-
41
- If the question does not seem related to the database, just return "I don't know" as the answer."""
42
- # ---------------------------------------------------------------------------------------------------------------------------------------------------------------
43
- examples = [
44
- {"input": "List all artists.", "query": "SELECT * FROM Artist;"},
45
- {
46
- "input": "List different reasons for downtime in Operator Category for machine K-8 during shift 1 in the months of Nov and Dec.",
47
- "query": """SELECT DISTINCT DownID AS 'Reasons for Downtime'
48
- FROM ShiftDownTimeDetails
49
- WHERE MachineID = 'K-8'
50
- AND DownCategory = 'Operator'
51
- AND Shift = 'First Shift'
52
- AND MONTH(dDate) IN (11, 12)"""
53
- },
54
- {
55
- "input": "How many instances of Downtime due to Management were observed in Aug 2023?",
56
- "query": "SELECT COUNT(*) FROM ShiftDownTimeDetails WHERE DownCategory = 'Management' AND dDate BETWEEN '2023-08-01' AND '2023-08-31'"
57
- },
58
- {
59
- "input": "Find all albums for the artist 'AC/DC'.",
60
- "query": "SELECT * FROM Album WHERE ArtistId = (SELECT ArtistId FROM Artist WHERE Name = 'AC/DC');",
61
- },
62
- {
63
- "input": "List all tracks in the 'Rock' genre.",
64
- "query": "SELECT * FROM Track WHERE GenreId = (SELECT GenreId FROM Genre WHERE Name = 'Rock');",
65
- },
66
- {
67
- "input": "Find the total duration of all tracks.",
68
- "query": "SELECT SUM(Milliseconds) FROM Track;",
69
- },
70
- {
71
- "input": "List all customers from Canada.",
72
- "query": "SELECT * FROM Customer WHERE Country = 'Canada';",
73
- },
74
- {
75
- "input": "How many tracks are there in the album with ID 5?",
76
- "query": "SELECT COUNT(*) FROM Track WHERE AlbumId = 5;",
77
- },
78
- {
79
- "input": "Find the total number of invoices.",
80
- "query": "SELECT COUNT(*) FROM Invoice;",
81
- },
82
- {
83
- "input": "How many ML_flags were raised (ML_flag=1) in 2023 for machine K-8",
84
- "query": "SELECT count(*) FROM DT_full WHERE ML_Flag = 1 AND strftime('%Y', dDate) = '2023' AND MachineID = 'K-8'"
85
- },
86
- {
87
- "input": "Mention all the Reasons behind Management DownCategory",
88
- "query": "SELECT DISTINCT DownCategory_Reason FROM DT_full WHERE DownCategory = 'Management'"
89
- },
90
- {
91
- "input": "List all tracks that are longer than 5 minutes.",
92
- "query": "SELECT * FROM Track WHERE Milliseconds > 300000;",
93
- },
94
- {
95
- "input": "Who are the top 5 customers by total purchase?",
96
- "query": "SELECT CustomerId, SUM(Total) AS TotalPurchase FROM Invoice GROUP BY CustomerId ORDER BY TotalPurchase DESC LIMIT 5;",
97
- },
98
- {
99
- "input": "Which albums are from the year 2000?",
100
- "query": "SELECT * FROM Album WHERE strftime('%Y', ReleaseDate) = '2000';",
101
- },
102
- {
103
- "input": "How many employees are there",
104
- "query": 'SELECT COUNT(*) FROM "Employee"',
105
- },
106
- ]
107
- # Unless the user specifies a specific number of examples they wish to obtain, always limit your query to at most {top_k} results.
108
- system_prefix = """You are an agent designed to interact with a SQL database
109
- Given an input question, create a syntactically correct {dialect} query to run, then look at the results of the query and return the answer.
110
-
111
- You can order the results by a relevant column to return the most interesting examples in the database.
112
- Never query for all the columns from a specific table, only ask for the relevant columns given the question.
113
- You have access to tools for interacting with the database.
114
- Only use the given tools. Only use the information returned by the tools to construct your final answer.
115
- You MUST double check your query before executing it. If you get an error while executing a query, rewrite the query and try again.
116
-
117
- DO NOT make any DML statements (INSERT, UPDATE, DELETE, DROP etc.) to the database.
118
-
119
- In the given ShiftDownTimeDetails table, many different columns are there, however only focus of select few which are relevant for the answer.
120
- The description of each column is given below as Additional Information, so that it will be easier for you to answer queries.
121
- Additional Information:-
122
- ID: gives the id of the record.
123
- dDate: The date on which the given instance was recorded.
124
- Shift: mentions the working shift when the current instance was encountered. In all there are total of 3 shifts.
125
- MachineID: Identification of a machine. Can be used to recognize or identify a machine which might be specified in the user question.
126
- OperationNo: The operation which was taking place on the machine when the current instance was recorded.
127
- OperationID: The operator which was undertaking the given operation.
128
- StartTime: The starting time of Downtime.
129
- EndTime: The ending time of Downtime.
130
- DownCategory: Specifies what kind of fault lead to the Downtime. Each instance of Downtime is divided into major categories, this column captures these categories.
131
- DownID: Specifies the reason behind the occurance of DownCategory and Downtime.
132
- ML_flag: When the downtime exceed a preset threshold, the value of ML_flag changes to 1 or ML_flag is raised.
133
- Threshold: Represents a fixed amount of time for which Downtime is acceptable for the current instance. Exceeding of the threshold by Downtime raises an ML_flag.
134
-
135
- Focus on the above columns
136
-
137
- If the question does not seem related to the database, just return "I don't know" as the answer.
138
-
139
- Here are some examples of user inputs and their corresponding SQL queries:"""
140
- # ---------------------------------------------------------------------------------------------------------------------------------------------------------------
141
- # You have access to the following tables: {table_names} , dont use mysql queries
142
  template = """You are a very intelligent AI assistant who is expert in identifying relevant questions from user and converting into MS-SQL queries to generate correct answer.
143
  For SQL queries, ALWAYS use the available tools in this order:
144
  1. sql_db_list_tables
 
1
  # ------------------------------ PROMPTS ------------------------------------------------------------------------------------------------------------------------
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2
  template = """You are a very intelligent AI assistant who is expert in identifying relevant questions from user and converting into MS-SQL queries to generate correct answer.
3
  For SQL queries, ALWAYS use the available tools in this order:
4
  1. sql_db_list_tables