Roland Ding commited on
Commit
7564bac
·
1 Parent(s): 5c94939

9.9.24.72 updated recursion for chains.py

Browse files

update execute_concurrent with recursion for traverse along the prompt
chain.
On branch main
modified: chains.py

Files changed (1) hide show
  1. chains.py +10 -5
chains.py CHANGED
@@ -1,9 +1,10 @@
1
  import asyncio
 
2
 
3
  from langchain.chat_models import ChatOpenAI
4
  from langchain.prompts.chat import ChatPromptTemplate
5
  from langchain.schema import BaseOutputParser
6
- import openai
7
 
8
  from utility import read_pdf,terminal_print
9
 
@@ -41,11 +42,15 @@ async def execute_concurrent(article,prompts):
41
  while prompt_list:
42
  name = prompt_list.pop(0)
43
  p = prompts[name]
 
 
 
 
44
 
45
- if any([s not in article for s in p["input_list"]]):
46
- # prompt_list.append(name)
47
- print("skip",name,"due to missing input",p["input_list"])
48
- continue
49
 
50
  print("executing",p["assessment_step"],name)
51
  input_text = "".join([article[s] for s in p["input_list"]])
 
1
  import asyncio
2
+ import openai
3
 
4
  from langchain.chat_models import ChatOpenAI
5
  from langchain.prompts.chat import ChatPromptTemplate
6
  from langchain.schema import BaseOutputParser
7
+ from application import *
8
 
9
  from utility import read_pdf,terminal_print
10
 
 
42
  while prompt_list:
43
  name = prompt_list.pop(0)
44
  p = prompts[name]
45
+
46
+ missing_inputs = [s for s in p["input_list"] if s not in article]
47
+ for x in missing_inputs:
48
+ await execute_concurrent(article,{x:app_data["prompts"][x]})
49
 
50
+ # if any([s not in article for s in p["input_list"]]):
51
+ # # prompt_list.append(name)
52
+ # print("skip",name,"due to missing input",p["input_list"])
53
+ # continue
54
 
55
  print("executing",p["assessment_step"],name)
56
  input_text = "".join([article[s] for s in p["input_list"]])