beswarm 0.1.12__py3-none-any.whl → 0.1.13__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- beswarm/aient/main.py +50 -0
- beswarm/aient/setup.py +15 -0
- beswarm/aient/src/aient/__init__.py +1 -0
- beswarm/aient/src/aient/core/__init__.py +1 -0
- beswarm/aient/src/aient/core/log_config.py +6 -0
- beswarm/aient/src/aient/core/models.py +232 -0
- beswarm/aient/src/aient/core/request.py +1665 -0
- beswarm/aient/src/aient/core/response.py +617 -0
- beswarm/aient/src/aient/core/test/test_base_api.py +18 -0
- beswarm/aient/src/aient/core/test/test_image.py +15 -0
- beswarm/aient/src/aient/core/test/test_payload.py +92 -0
- beswarm/aient/src/aient/core/utils.py +715 -0
- beswarm/aient/src/aient/models/__init__.py +9 -0
- beswarm/aient/src/aient/models/audio.py +63 -0
- beswarm/aient/src/aient/models/base.py +251 -0
- beswarm/aient/src/aient/models/chatgpt.py +938 -0
- beswarm/aient/src/aient/models/claude.py +640 -0
- beswarm/aient/src/aient/models/duckduckgo.py +241 -0
- beswarm/aient/src/aient/models/gemini.py +357 -0
- beswarm/aient/src/aient/models/groq.py +268 -0
- beswarm/aient/src/aient/models/vertex.py +420 -0
- beswarm/aient/src/aient/plugins/__init__.py +33 -0
- beswarm/aient/src/aient/plugins/arXiv.py +48 -0
- beswarm/aient/src/aient/plugins/config.py +172 -0
- beswarm/aient/src/aient/plugins/excute_command.py +35 -0
- beswarm/aient/src/aient/plugins/get_time.py +19 -0
- beswarm/aient/src/aient/plugins/image.py +72 -0
- beswarm/aient/src/aient/plugins/list_directory.py +50 -0
- beswarm/aient/src/aient/plugins/read_file.py +79 -0
- beswarm/aient/src/aient/plugins/registry.py +116 -0
- beswarm/aient/src/aient/plugins/run_python.py +156 -0
- beswarm/aient/src/aient/plugins/websearch.py +394 -0
- beswarm/aient/src/aient/plugins/write_file.py +51 -0
- beswarm/aient/src/aient/prompt/__init__.py +1 -0
- beswarm/aient/src/aient/prompt/agent.py +280 -0
- beswarm/aient/src/aient/utils/__init__.py +0 -0
- beswarm/aient/src/aient/utils/prompt.py +143 -0
- beswarm/aient/src/aient/utils/scripts.py +721 -0
- beswarm/aient/test/chatgpt.py +161 -0
- beswarm/aient/test/claude.py +32 -0
- beswarm/aient/test/test.py +2 -0
- beswarm/aient/test/test_API.py +6 -0
- beswarm/aient/test/test_Deepbricks.py +20 -0
- beswarm/aient/test/test_Web_crawler.py +262 -0
- beswarm/aient/test/test_aiwaves.py +25 -0
- beswarm/aient/test/test_aiwaves_arxiv.py +19 -0
- beswarm/aient/test/test_ask_gemini.py +8 -0
- beswarm/aient/test/test_class.py +17 -0
- beswarm/aient/test/test_claude.py +23 -0
- beswarm/aient/test/test_claude_zh_char.py +26 -0
- beswarm/aient/test/test_ddg_search.py +50 -0
- beswarm/aient/test/test_download_pdf.py +56 -0
- beswarm/aient/test/test_gemini.py +97 -0
- beswarm/aient/test/test_get_token_dict.py +21 -0
- beswarm/aient/test/test_google_search.py +35 -0
- beswarm/aient/test/test_jieba.py +32 -0
- beswarm/aient/test/test_json.py +65 -0
- beswarm/aient/test/test_langchain_search_old.py +235 -0
- beswarm/aient/test/test_logging.py +32 -0
- beswarm/aient/test/test_ollama.py +55 -0
- beswarm/aient/test/test_plugin.py +16 -0
- beswarm/aient/test/test_py_run.py +26 -0
- beswarm/aient/test/test_requests.py +162 -0
- beswarm/aient/test/test_search.py +18 -0
- beswarm/aient/test/test_tikitoken.py +19 -0
- beswarm/aient/test/test_token.py +94 -0
- beswarm/aient/test/test_url.py +33 -0
- beswarm/aient/test/test_whisper.py +14 -0
- beswarm/aient/test/test_wildcard.py +20 -0
- beswarm/aient/test/test_yjh.py +21 -0
- {beswarm-0.1.12.dist-info → beswarm-0.1.13.dist-info}/METADATA +1 -1
- beswarm-0.1.13.dist-info/RECORD +131 -0
- beswarm-0.1.12.dist-info/RECORD +0 -61
- {beswarm-0.1.12.dist-info → beswarm-0.1.13.dist-info}/WHEEL +0 -0
- {beswarm-0.1.12.dist-info → beswarm-0.1.13.dist-info}/top_level.txt +0 -0
@@ -0,0 +1,162 @@
|
|
1
|
+
import json
|
2
|
+
import requests
|
3
|
+
|
4
|
+
class APIClient:
|
5
|
+
def __init__(self, api_url, api_key, timeout=30):
|
6
|
+
self.api_url = api_url
|
7
|
+
self.api_key = api_key
|
8
|
+
self.timeout = timeout
|
9
|
+
self.session = requests.Session()
|
10
|
+
|
11
|
+
def post_request(self, json_post, **kwargs):
|
12
|
+
for _ in range(2):
|
13
|
+
self.print_json(json_post)
|
14
|
+
try:
|
15
|
+
response = self.send_post_request(json_post, **kwargs)
|
16
|
+
except (ConnectionError, requests.exceptions.ReadTimeout, Exception) as e:
|
17
|
+
self.handle_exception(e)
|
18
|
+
return
|
19
|
+
if response.status_code == 400:
|
20
|
+
self.handle_bad_request(response, json_post)
|
21
|
+
continue
|
22
|
+
if response.status_code == 200:
|
23
|
+
break
|
24
|
+
if response.status_code != 200:
|
25
|
+
raise Exception(f"{response.status_code} {response.reason} {response.text}")
|
26
|
+
|
27
|
+
def print_json(self, json_post):
|
28
|
+
print(json.dumps(json_post, indent=4, ensure_ascii=False))
|
29
|
+
|
30
|
+
def send_post_request(self, json_post, **kwargs):
|
31
|
+
return self.session.post(
|
32
|
+
self.api_url.chat_url,
|
33
|
+
headers={"Authorization": f"Bearer {kwargs.get('api_key', self.api_key)}"},
|
34
|
+
json=json_post,
|
35
|
+
timeout=kwargs.get("timeout", self.timeout),
|
36
|
+
stream=True,
|
37
|
+
)
|
38
|
+
|
39
|
+
def handle_exception(self, e):
|
40
|
+
if isinstance(e, ConnectionError):
|
41
|
+
print("连接错误,请检查服务器状态或网络连接。")
|
42
|
+
elif isinstance(e, requests.exceptions.ReadTimeout):
|
43
|
+
print("请求超时,请检查网络连接或增加超时时间。")
|
44
|
+
else:
|
45
|
+
print(f"发生了未预料的错误: {e}")
|
46
|
+
|
47
|
+
def handle_bad_request(self, response, json_post):
|
48
|
+
print("response.text", response.text)
|
49
|
+
if "invalid_request_error" in response.text:
|
50
|
+
self.fix_invalid_request_error(json_post)
|
51
|
+
else:
|
52
|
+
self.remove_unnecessary_fields(json_post)
|
53
|
+
|
54
|
+
def fix_invalid_request_error(self, json_post):
|
55
|
+
for index, mess in enumerate(json_post["messages"]):
|
56
|
+
if isinstance(mess["content"], list):
|
57
|
+
json_post["messages"][index] = {
|
58
|
+
"role": mess["role"],
|
59
|
+
"content": mess["content"][0]["text"]
|
60
|
+
}
|
61
|
+
|
62
|
+
def remove_unnecessary_fields(self, json_post):
|
63
|
+
if "function_call" in json_post:
|
64
|
+
del json_post["function_call"]
|
65
|
+
if "functions" in json_post:
|
66
|
+
del json_post["functions"]
|
67
|
+
|
68
|
+
# Usage
|
69
|
+
api_client = APIClient(api_url="https://api.example.com", api_key="your_api_key")
|
70
|
+
json_post = {
|
71
|
+
"messages": [
|
72
|
+
{"role": "user", "content": "Hello"}
|
73
|
+
]
|
74
|
+
}
|
75
|
+
api_client.post_request(json_post)
|
76
|
+
|
77
|
+
|
78
|
+
|
79
|
+
import json
|
80
|
+
|
81
|
+
def process_line(line):
|
82
|
+
"""处理每一行数据."""
|
83
|
+
if not line or line.startswith(':'):
|
84
|
+
return None
|
85
|
+
if line.startswith('data:'):
|
86
|
+
return line[6:]
|
87
|
+
return line
|
88
|
+
|
89
|
+
def parse_response(line):
|
90
|
+
"""解析响应行."""
|
91
|
+
try:
|
92
|
+
return json.loads(line)
|
93
|
+
except json.JSONDecodeError:
|
94
|
+
return None
|
95
|
+
|
96
|
+
def handle_usage(usage):
|
97
|
+
"""处理使用情况."""
|
98
|
+
total_tokens = usage.get("total_tokens", 0)
|
99
|
+
print("\n\rtotal_tokens", total_tokens)
|
100
|
+
|
101
|
+
def handle_choices(choices, full_response, response_role, need_function_call, function_full_response):
|
102
|
+
"""处理响应中的选择."""
|
103
|
+
delta = choices[0].get("delta")
|
104
|
+
if not delta:
|
105
|
+
return full_response, response_role, need_function_call, function_full_response
|
106
|
+
|
107
|
+
if "role" in delta and response_role is None:
|
108
|
+
response_role = delta["role"]
|
109
|
+
if "content" in delta and delta["content"]:
|
110
|
+
need_function_call = False
|
111
|
+
content = delta["content"]
|
112
|
+
full_response += content
|
113
|
+
yield content
|
114
|
+
if "function_call" in delta:
|
115
|
+
need_function_call = True
|
116
|
+
function_call_content = delta["function_call"]["arguments"]
|
117
|
+
if "name" in delta["function_call"]:
|
118
|
+
function_call_name = delta["function_call"]["name"]
|
119
|
+
function_full_response += function_call_content
|
120
|
+
if function_full_response.count("\\n") > 2 or "}" in function_full_response:
|
121
|
+
return full_response, response_role, need_function_call, function_full_response
|
122
|
+
|
123
|
+
return full_response, response_role, need_function_call, function_full_response
|
124
|
+
|
125
|
+
def read_http_stream(response):
|
126
|
+
"""读取 HTTP 流并处理数据."""
|
127
|
+
full_response = ""
|
128
|
+
function_full_response = ""
|
129
|
+
response_role = None
|
130
|
+
need_function_call = False
|
131
|
+
|
132
|
+
for line in response.iter_lines():
|
133
|
+
line = line.decode("utf-8")
|
134
|
+
processed_line = process_line(line)
|
135
|
+
if processed_line is None:
|
136
|
+
continue
|
137
|
+
|
138
|
+
if processed_line == "[DONE]":
|
139
|
+
break
|
140
|
+
|
141
|
+
resp = parse_response(processed_line)
|
142
|
+
if resp is None:
|
143
|
+
continue
|
144
|
+
|
145
|
+
usage = resp.get("usage")
|
146
|
+
if usage:
|
147
|
+
handle_usage(usage)
|
148
|
+
|
149
|
+
choices = resp.get("choices")
|
150
|
+
if not choices:
|
151
|
+
continue
|
152
|
+
|
153
|
+
result = handle_choices(choices, full_response, response_role, need_function_call, function_full_response)
|
154
|
+
if isinstance(result, tuple):
|
155
|
+
full_response, response_role, need_function_call, function_full_response = result
|
156
|
+
else:
|
157
|
+
yield result
|
158
|
+
|
159
|
+
# 使用示例
|
160
|
+
# response = requests.get("your_streaming_api_url", stream=True)
|
161
|
+
# for content in read_http_stream(response):
|
162
|
+
# print(content)
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import os
|
2
|
+
from aient.models import chatgpt
|
3
|
+
|
4
|
+
API = os.environ.get('API', None)
|
5
|
+
API_URL = os.environ.get('API_URL', None)
|
6
|
+
GPT_ENGINE = os.environ.get('GPT_ENGINE', 'gpt-4o')
|
7
|
+
|
8
|
+
systemprompt = (
|
9
|
+
"You are ChatGPT, a large language model trained by OpenAI. Respond conversationally"
|
10
|
+
)
|
11
|
+
bot = chatgpt(api_key=API, api_url=API_URL, engine=GPT_ENGINE, system_prompt=systemprompt, print_log=True)
|
12
|
+
for text in bot.ask_stream("搜索上海的天气"):
|
13
|
+
# for text in bot.ask_stream("我在广州市,想周一去香港,周四早上回来,是去游玩,请你帮我规划整个行程。包括细节,如交通,住宿,餐饮,价格,等等,最好细节到每天各个部分的时间,花费,等等,尽量具体,用户一看就能直接执行的那种"):
|
14
|
+
# for text in bot.ask_stream("上海有哪些好玩的地方?"):
|
15
|
+
# for text in bot.ask_stream("just say test"):
|
16
|
+
# for text in bot.ask_stream("我在上海想去重庆旅游,我只有2000元预算,我想在重庆玩一周,你能帮我规划一下吗?"):
|
17
|
+
# for text in bot.ask_stream("我在上海想去重庆旅游,我有一天的时间。你能帮我规划一下吗?"):
|
18
|
+
print(text, end="")
|
@@ -0,0 +1,19 @@
|
|
1
|
+
import tiktoken
|
2
|
+
tiktoken.get_encoding("cl100k_base")
|
3
|
+
tiktoken.model.MODEL_TO_ENCODING["claude-2.1"] = "cl100k_base"
|
4
|
+
tiktoken.get_encoding("cl100k_base")
|
5
|
+
encoding = tiktoken.encoding_for_model("gpt-3.5-turbo-16k")
|
6
|
+
# encoding = tiktoken.encoding_for_model("claude-2.1")
|
7
|
+
encode_web_text_list = []
|
8
|
+
if encode_web_text_list == []:
|
9
|
+
encode_web_text_list = encoding.encode("Hello, my dog is cute")
|
10
|
+
print("len", len(encode_web_text_list))
|
11
|
+
function_response = encoding.decode(encode_web_text_list[:2])
|
12
|
+
print(function_response)
|
13
|
+
encode_web_text_list = encode_web_text_list[2:]
|
14
|
+
print(encode_web_text_list)
|
15
|
+
encode_web_text_list = [856, 5679, 374, 19369]
|
16
|
+
tiktoken.get_encoding("cl100k_base")
|
17
|
+
encoding1 = tiktoken.encoding_for_model("gpt-3.5-turbo-16k")
|
18
|
+
function_response = encoding1.decode(encode_web_text_list[:2])
|
19
|
+
print(function_response)
|
@@ -0,0 +1,94 @@
|
|
1
|
+
import os
|
2
|
+
import sys
|
3
|
+
sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
|
4
|
+
import tiktoken
|
5
|
+
from utils.function_call import function_call_list
|
6
|
+
import config
|
7
|
+
import requests
|
8
|
+
import json
|
9
|
+
import re
|
10
|
+
|
11
|
+
from dotenv import load_dotenv
|
12
|
+
load_dotenv()
|
13
|
+
|
14
|
+
def get_token_count(messages) -> int:
|
15
|
+
tiktoken.get_encoding("cl100k_base")
|
16
|
+
encoding = tiktoken.encoding_for_model("gpt-3.5-turbo")
|
17
|
+
|
18
|
+
num_tokens = 0
|
19
|
+
for message in messages:
|
20
|
+
# every message follows <im_start>{role/name}\n{content}<im_end>\n
|
21
|
+
num_tokens += 5
|
22
|
+
for key, value in message.items():
|
23
|
+
if value:
|
24
|
+
num_tokens += len(encoding.encode(value))
|
25
|
+
if key == "name": # if there's a name, the role is omitted
|
26
|
+
num_tokens += 5 # role is always required and always 1 token
|
27
|
+
num_tokens += 5 # every reply is primed with <im_start>assistant
|
28
|
+
return num_tokens
|
29
|
+
# print(get_token_count(message_list))
|
30
|
+
|
31
|
+
|
32
|
+
|
33
|
+
def get_message_token(url, json_post):
|
34
|
+
headers = {"Authorization": f"Bearer {os.environ.get('API', None)}"}
|
35
|
+
response = requests.Session().post(
|
36
|
+
url,
|
37
|
+
headers=headers,
|
38
|
+
json=json_post,
|
39
|
+
timeout=None,
|
40
|
+
)
|
41
|
+
if response.status_code != 200:
|
42
|
+
json_response = json.loads(response.text)
|
43
|
+
string = json_response["error"]["message"]
|
44
|
+
print(string)
|
45
|
+
string = re.findall(r"\((.*?)\)", string)[0]
|
46
|
+
numbers = re.findall(r"\d+\.?\d*", string)
|
47
|
+
numbers = [int(i) for i in numbers]
|
48
|
+
if len(numbers) == 2:
|
49
|
+
return {
|
50
|
+
"messages": numbers[0],
|
51
|
+
"total": numbers[0],
|
52
|
+
}
|
53
|
+
elif len(numbers) == 3:
|
54
|
+
return {
|
55
|
+
"messages": numbers[0],
|
56
|
+
"functions": numbers[1],
|
57
|
+
"total": numbers[0] + numbers[1],
|
58
|
+
}
|
59
|
+
else:
|
60
|
+
raise Exception("Unknown error")
|
61
|
+
|
62
|
+
|
63
|
+
if __name__ == "__main__":
|
64
|
+
# message_list = [{'role': 'system', 'content': 'You are ChatGPT, a large language model trained by OpenAI. Respond conversationally in Simplified Chinese. Knowledge cutoff: 2021-09. Current date: [ 2023-12-12 ]'}, {'role': 'user', 'content': 'hi'}]
|
65
|
+
messages = [{'role': 'system', 'content': 'You are ChatGPT, a large language model trained by OpenAI. Respond conversationally in Simplified Chinese. Knowledge cutoff: 2021-09. Current date: [ 2023-12-12 ]'}, {'role': 'user', 'content': 'hi'}, {'role': 'assistant', 'content': '你好!有什么我可以帮助你的吗?'}]
|
66
|
+
|
67
|
+
model = "gpt-3.5-turbo"
|
68
|
+
temperature = 0.5
|
69
|
+
top_p = 0.7
|
70
|
+
presence_penalty = 0.0
|
71
|
+
frequency_penalty = 0.0
|
72
|
+
reply_count = 1
|
73
|
+
role = "user"
|
74
|
+
model_max_tokens = 5000
|
75
|
+
url = config.bot_api_url.chat_url
|
76
|
+
|
77
|
+
json_post = {
|
78
|
+
"model": model,
|
79
|
+
"messages": messages,
|
80
|
+
"stream": True,
|
81
|
+
"temperature": temperature,
|
82
|
+
"top_p": top_p,
|
83
|
+
"presence_penalty": presence_penalty,
|
84
|
+
"frequency_penalty": frequency_penalty,
|
85
|
+
"n": reply_count,
|
86
|
+
"user": role,
|
87
|
+
"max_tokens": model_max_tokens,
|
88
|
+
}
|
89
|
+
# json_post.update(function_call_list["base"])
|
90
|
+
# if config.PLUGINS["SEARCH_USE_GPT"]:
|
91
|
+
# json_post["functions"].append(function_call_list["SEARCH_USE_GPT"])
|
92
|
+
# json_post["functions"].append(function_call_list["URL"])
|
93
|
+
# print(get_token_count(message_list))
|
94
|
+
print(get_message_token(url, json_post))
|
@@ -0,0 +1,33 @@
|
|
1
|
+
import re
|
2
|
+
import datetime
|
3
|
+
|
4
|
+
def sort_by_time(urls):
|
5
|
+
def extract_date(url):
|
6
|
+
match = re.search(r'[12]\d{3}.\d{1,2}.\d{1,2}', url)
|
7
|
+
if match is not None:
|
8
|
+
match = re.sub(r'([12]\d{3}).(\d{1,2}).(\d{1,2})', "\\1/\\2/\\3", match.group())
|
9
|
+
print(match)
|
10
|
+
if int(match[:4]) > datetime.datetime.now().year:
|
11
|
+
match = "1000/01/01"
|
12
|
+
else:
|
13
|
+
match = "1000/01/01"
|
14
|
+
try:
|
15
|
+
return datetime.datetime.strptime(match, '%Y/%m/%d')
|
16
|
+
except:
|
17
|
+
match = "1000/01/01"
|
18
|
+
return datetime.datetime.strptime(match, '%Y/%m/%d')
|
19
|
+
|
20
|
+
# 提取日期并创建一个包含日期和URL的元组列表
|
21
|
+
date_url_pairs = [(extract_date(url), url) for url in urls]
|
22
|
+
|
23
|
+
# 按日期排序
|
24
|
+
date_url_pairs.sort(key=lambda x: x[0], reverse=True)
|
25
|
+
|
26
|
+
# 获取排序后的URL列表
|
27
|
+
sorted_urls = [url for _, url in date_url_pairs]
|
28
|
+
|
29
|
+
return sorted_urls
|
30
|
+
|
31
|
+
if __name__ == "__main__":
|
32
|
+
urls = ['https://www.bbc.com/zhongwen/simp/chinese-news-58392571', 'https://glginc.cn/articles/china-gaming-regulation-impact/', 'https://www.gov.cn/zhengce/2021-08/30/content_5634208.htm', 'https://zwgk.mct.gov.cn/zfxxgkml/zcfg/zcjd/202012/t20201205_915382.html', 'https://www.aljazeera.com/news/2023/12/23/china-considers-revising-gaming-rules-after-tech-giants-lose-billions', 'https://www.reuters.com/world/china/china-issues-draft-rules-online-game-management-2023-12-22/', 'https://www.cnn.com/2023/12/22/business/chinese-tech-giants-shares-plunge-online-gaming-ban-intl-hnk/index.html', 'https://www.bbc.com/news/technology-67801091', 'https://news.cctv.com/2023/12/22/ARTIUFZFQtfoBp1tfwsq1w1B231222.shtml', 'https://news.sina.com.cn/c/2023-12-22/doc-imzywncy6795505.shtml', 'https://www.thepaper.cn/newsDetail_forward_25728500', 'https://new.qq.com/rain/a/20230907A01LKT00']
|
33
|
+
print(sort_by_time(urls))
|
@@ -0,0 +1,14 @@
|
|
1
|
+
import requests
|
2
|
+
import os
|
3
|
+
|
4
|
+
headers = {
|
5
|
+
"Authorization": f"Bearer {os.environ.get('API', None)}",
|
6
|
+
"Content-Type": "multipart/form-data"
|
7
|
+
}
|
8
|
+
files = {
|
9
|
+
'file': ('filename', open('/path/to/file/audio.mp3', 'rb'), 'audio/mpeg'),
|
10
|
+
'model': (None, 'whisper-1')
|
11
|
+
}
|
12
|
+
|
13
|
+
response = requests.post(os.environ.get('API_URL', None), headers=headers, files=files)
|
14
|
+
print(response.text)
|
@@ -0,0 +1,20 @@
|
|
1
|
+
import os
|
2
|
+
from datetime import datetime
|
3
|
+
|
4
|
+
from aient.models import chatgpt
|
5
|
+
from aient.utils import prompt
|
6
|
+
|
7
|
+
API = os.environ.get('API', None)
|
8
|
+
API_URL = os.environ.get('API_URL', None)
|
9
|
+
GPT_ENGINE = os.environ.get('GPT_ENGINE', 'gpt-4o')
|
10
|
+
LANGUAGE = os.environ.get('LANGUAGE', 'Simplified Chinese')
|
11
|
+
|
12
|
+
current_date = datetime.now()
|
13
|
+
Current_Date = current_date.strftime("%Y-%m-%d")
|
14
|
+
|
15
|
+
systemprompt = os.environ.get('SYSTEMPROMPT', prompt.system_prompt.format(LANGUAGE, Current_Date))
|
16
|
+
|
17
|
+
bot = chatgpt(api_key=API, api_url=API_URL, engine=GPT_ENGINE, system_prompt=systemprompt)
|
18
|
+
# for text in bot.ask_stream("你好"):
|
19
|
+
for text in bot.ask_stream("arXiv:2311.17132 讲了什么?"):
|
20
|
+
print(text, end="")
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import os
|
2
|
+
from datetime import datetime
|
3
|
+
|
4
|
+
from aient.models import chatgpt
|
5
|
+
from aient.utils import prompt
|
6
|
+
|
7
|
+
API = os.environ.get('API', None)
|
8
|
+
API_URL = os.environ.get('API_URL', None)
|
9
|
+
GPT_ENGINE = os.environ.get('GPT_ENGINE', 'gpt-4o')
|
10
|
+
LANGUAGE = os.environ.get('LANGUAGE', 'Simplified Chinese')
|
11
|
+
|
12
|
+
current_date = datetime.now()
|
13
|
+
Current_Date = current_date.strftime("%Y-%m-%d")
|
14
|
+
|
15
|
+
systemprompt = os.environ.get('SYSTEMPROMPT', prompt.system_prompt.format(LANGUAGE, Current_Date))
|
16
|
+
|
17
|
+
bot = chatgpt(api_key=API, api_url=API_URL, engine=GPT_ENGINE, system_prompt=systemprompt)
|
18
|
+
for text in bot.ask_stream("arXiv:2210.10716 这篇文章讲了啥"):
|
19
|
+
# for text in bot.ask_stream("今天的微博热搜有哪些?"):
|
20
|
+
# for text in bot.ask_stream("你现在是什么版本?"):
|
21
|
+
print(text, end="")
|
@@ -0,0 +1,131 @@
|
|
1
|
+
beswarm/__init__.py,sha256=HZjUOJtZR5QhMuDbq-wukQQn1VrBusNWai_ysGo-VVI,20
|
2
|
+
beswarm/utils.py,sha256=AdDCcqAIIKQEMl7PfryVgeT9G5sHe7QNsZnrvmTGA8E,283
|
3
|
+
beswarm/aient/main.py,sha256=SiYAIgQlLJqYusnTVEJOx1WNkSJKMImhgn5aWjfroxg,3814
|
4
|
+
beswarm/aient/setup.py,sha256=X_D2xeeOXsW94bPqyEN6-QSbw9oaZzqym_0KCPWSxrk,487
|
5
|
+
beswarm/aient/src/aient/__init__.py,sha256=SRfF7oDVlOOAi6nGKiJIUK6B_arqYLO9iSMp-2IZZps,21
|
6
|
+
beswarm/aient/src/aient/core/__init__.py,sha256=NxjebTlku35S4Dzr16rdSqSTWUvvwEeACe8KvHJnjPg,34
|
7
|
+
beswarm/aient/src/aient/core/log_config.py,sha256=kz2_yJv1p-o3lUQOwA3qh-LSc3wMHv13iCQclw44W9c,274
|
8
|
+
beswarm/aient/src/aient/core/models.py,sha256=_1wYZg_n9kb2A3C8xCboyqleH2iHc9scwOvtx9DPeok,7582
|
9
|
+
beswarm/aient/src/aient/core/request.py,sha256=84GysWqkt5PNTYQ4VLK1z2GK66WIFs-691oHgHDBH1A,60773
|
10
|
+
beswarm/aient/src/aient/core/response.py,sha256=CSAOQmybBu3i2Yq2YUyi91dZWTN1tmtJEBTI8RFwj_s,30594
|
11
|
+
beswarm/aient/src/aient/core/utils.py,sha256=R4oKj1oVsdfePdQReaW-ZU4VRTCetvdCKPz_OOTOU_w,26072
|
12
|
+
beswarm/aient/src/aient/core/test/test_base_api.py,sha256=pWnycRJbuPSXKKU9AQjWrMAX1wiLC_014Qc9hh5C2Pw,524
|
13
|
+
beswarm/aient/src/aient/core/test/test_image.py,sha256=_T4peNGdXKBHHxyQNx12u-NTyFE8TlYI6NvvagsG2LE,319
|
14
|
+
beswarm/aient/src/aient/core/test/test_payload.py,sha256=8jBiJY1uidm1jzL-EiK0s6UGmW9XkdsuuKFGrwFhFkw,2755
|
15
|
+
beswarm/aient/src/aient/models/__init__.py,sha256=ouNDNvoBBpIFrLsk09Q_sq23HR0GbLAKfGLIFmfEuXE,219
|
16
|
+
beswarm/aient/src/aient/models/audio.py,sha256=kRd-8-WXzv4vwvsTGwnstK-WR8--vr9CdfCZzu8y9LA,1934
|
17
|
+
beswarm/aient/src/aient/models/base.py,sha256=z-Z0pJfTN2x0cuwfvu0BdMRY9O-RmLwHEnBIJN1x4Fg,6719
|
18
|
+
beswarm/aient/src/aient/models/chatgpt.py,sha256=aFzp25JFGHP4pW1g6jNZN__haggpUWy50KkvvzzMrrM,42170
|
19
|
+
beswarm/aient/src/aient/models/claude.py,sha256=thK9P8qkaaoUN3OOJ9Shw4KDs-pAGKPoX4FOPGFXva8,28597
|
20
|
+
beswarm/aient/src/aient/models/duckduckgo.py,sha256=1l7vYCs9SG5SWPCbcl7q6pCcB5AUF_r-a4l9frz3Ogo,8115
|
21
|
+
beswarm/aient/src/aient/models/gemini.py,sha256=chGLc-8G_DAOxr10HPoOhvVFW1RvMgHd6mt--VyAW98,14730
|
22
|
+
beswarm/aient/src/aient/models/groq.py,sha256=2JCB0QE1htOprJHI5fZ11R2RtOhsHlsTjbmFyzc8oSM,10084
|
23
|
+
beswarm/aient/src/aient/models/vertex.py,sha256=qVD5l1Q538xXUPulxG4nmDjXE1VoV4yuAkTCpIeJVw0,16795
|
24
|
+
beswarm/aient/src/aient/plugins/__init__.py,sha256=p3KO6Aa3Lupos4i2SjzLQw1hzQTigOAfEHngsldrsyk,986
|
25
|
+
beswarm/aient/src/aient/plugins/arXiv.py,sha256=yHjb6PS3GUWazpOYRMKMzghKJlxnZ5TX8z9F6UtUVow,1461
|
26
|
+
beswarm/aient/src/aient/plugins/config.py,sha256=KnZ5xtb5o41FI2_qvxTEQhssdd3WJc7lIAFNR85INQw,7817
|
27
|
+
beswarm/aient/src/aient/plugins/excute_command.py,sha256=0sQZGLCaRfh0yMM63fXU8XZV7jlo9FKeyEbM-rfgTFg,1209
|
28
|
+
beswarm/aient/src/aient/plugins/get_time.py,sha256=Ih5XIW5SDAIhrZ9W4Qe5Hs1k4ieKPUc_LAd6ySNyqZk,654
|
29
|
+
beswarm/aient/src/aient/plugins/image.py,sha256=ZElCIaZznE06TN9xW3DrSukS7U3A5_cjk1Jge4NzPxw,2072
|
30
|
+
beswarm/aient/src/aient/plugins/list_directory.py,sha256=5ubm-mfrj-tanGSDp4M_Tmb6vQb3dx2-XVfQ2yL2G8A,1394
|
31
|
+
beswarm/aient/src/aient/plugins/read_file.py,sha256=kjHqtAGSy6AV8kFpv342x6yWGYfvZ9LGmxFZXJ3XzQI,2369
|
32
|
+
beswarm/aient/src/aient/plugins/registry.py,sha256=YknzhieU_8nQ3oKlUSSWDB4X7t2Jx0JnqT2Jd9Xsvfk,3574
|
33
|
+
beswarm/aient/src/aient/plugins/run_python.py,sha256=dgcUwBunMuDkaSKR5bToudVzSdrXVewktDDFUz_iIOQ,4589
|
34
|
+
beswarm/aient/src/aient/plugins/websearch.py,sha256=yiBzqXK5X220ibR-zko3VDsn4QOnLu1k6E2YOygCeTQ,15185
|
35
|
+
beswarm/aient/src/aient/plugins/write_file.py,sha256=qYbNvcDTGs00pWYb0UOSYSeN4kw5_DMDxjaSlxtlAkU,1732
|
36
|
+
beswarm/aient/src/aient/prompt/__init__.py,sha256=GBtn6-JDT8KHFCcuPpfSNE_aGddg5p4FEyMCy4BfwGs,20
|
37
|
+
beswarm/aient/src/aient/prompt/agent.py,sha256=ssZREegzmkWNW20dxzGO92J8Y5v7yjRTR9znTPDjo5Q,23681
|
38
|
+
beswarm/aient/src/aient/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
39
|
+
beswarm/aient/src/aient/utils/prompt.py,sha256=UcSzKkFE4-h_1b6NofI6xgk3GoleqALRKY8VBaXLjmI,11311
|
40
|
+
beswarm/aient/src/aient/utils/scripts.py,sha256=n0jR5eXCBIK12W4bIx-xU1FVl1hZ4zDC7hq_BWQHYJU,27537
|
41
|
+
beswarm/aient/test/chatgpt.py,sha256=Hvl7FuDt1c74N5TVBmhErOPvJbJJzA7FNp5VoZM4u30,4957
|
42
|
+
beswarm/aient/test/claude.py,sha256=IyB4qI1eJLwlSfDNSnt2FhbQWYyBighHUjJxEXc3osQ,1095
|
43
|
+
beswarm/aient/test/test.py,sha256=rldnoLQdtRR8IKFSIzTti7eIK2MpPMoi9gL5qD8_K44,29
|
44
|
+
beswarm/aient/test/test_API.py,sha256=4Cz0raphXT8JywBxwK0SWSp-coY0--wvZpvFbtbqJ2g,251
|
45
|
+
beswarm/aient/test/test_Deepbricks.py,sha256=EQwwNrTMHV4CEcZKdwUVGrwtNUsF0CCKbM-_W9IOYsk,693
|
46
|
+
beswarm/aient/test/test_Web_crawler.py,sha256=l-DY0xwVPBfeEitUASkcIf19b4XwGrN-Ql_p7Dsbg_A,11410
|
47
|
+
beswarm/aient/test/test_aiwaves.py,sha256=syZBxeWXyK7GMOykjXFpAoBFHgPS6x7pffquEHsNGWo,2486
|
48
|
+
beswarm/aient/test/test_aiwaves_arxiv.py,sha256=J9pCAhAWzzlaA9LeTj9cByJhJwLuZ7n1FXRskvPYhxI,653
|
49
|
+
beswarm/aient/test/test_ask_gemini.py,sha256=WKHtq8xfCQM16CeGtwaw1nOpoCjaNkBPH4Lb9vmdf3M,295
|
50
|
+
beswarm/aient/test/test_class.py,sha256=gYP5VnAWxYoGmr6-6yxRncq9_F2eUNv7ru-tOBMij0Q,268
|
51
|
+
beswarm/aient/test/test_claude.py,sha256=e7Rae9pCMlLehZOGeInigf79oo5yXdPRNyke52J1pMM,931
|
52
|
+
beswarm/aient/test/test_claude_zh_char.py,sha256=glaIPd1eGoMquxV5g_0oVxVnIT_tEU4xF4DhMBvuv8o,1092
|
53
|
+
beswarm/aient/test/test_ddg_search.py,sha256=HnM72mwi4Yp87BymMmQ0eRd0-OJtyWEIUvJvN9QBhdg,1498
|
54
|
+
beswarm/aient/test/test_download_pdf.py,sha256=ZPNMMM-wy23wuascLBFCuEAmxRVVqV8wf4VjK2MesoM,2435
|
55
|
+
beswarm/aient/test/test_gemini.py,sha256=YwOYNp8H0aCKlmMVxLjPC_L-mKcpnlWH_IXyhxS_0Fk,2832
|
56
|
+
beswarm/aient/test/test_get_token_dict.py,sha256=QuR67aUbS9hTwBjndsr1u7-juopEe1Ken_RTkPXj__Q,843
|
57
|
+
beswarm/aient/test/test_google_search.py,sha256=rPaKqD_N3ogHYE5DrMfRmKumcVAHKC7LcYw5euR_zGM,1035
|
58
|
+
beswarm/aient/test/test_jieba.py,sha256=ydqIrPtJ71cgbQSXpkS_g1kSiBzEpk0mjv6N-6ETw4g,1139
|
59
|
+
beswarm/aient/test/test_json.py,sha256=cbKSwwSwt1A9sdn5vO_5cGca0x2rR4skejAgb8uDDu0,2284
|
60
|
+
beswarm/aient/test/test_langchain_search_old.py,sha256=QGZSYi-aBB5qrKPI64qfgENbGozfrSGQBpNZpHt0d7k,9066
|
61
|
+
beswarm/aient/test/test_logging.py,sha256=DFZ2KqrTVH6FQ5BKJIQudZxWRUdkzWka2QjmtVYPXvw,995
|
62
|
+
beswarm/aient/test/test_ollama.py,sha256=ywy9l06S1g1AnWQvlBbhpac7i-hBB9bpwi-pk0Afivc,1325
|
63
|
+
beswarm/aient/test/test_plugin.py,sha256=0sBwpf1YdKba-IVPZwBMKbLR7buHfudLS9NOETm7BTc,779
|
64
|
+
beswarm/aient/test/test_py_run.py,sha256=l8mWIbcM86sV6zBlvirB2XlbZvNRCx-vhnV1fjX4DQc,846
|
65
|
+
beswarm/aient/test/test_requests.py,sha256=JMBlfftS-hzcpfgPXJAgjRY9XBq3SAc9qJA8gDGFrEs,5478
|
66
|
+
beswarm/aient/test/test_search.py,sha256=-SRNOo2PvAAVmqIASFVq8WYmXqjLRonmHVEcBZkJAek,1171
|
67
|
+
beswarm/aient/test/test_tikitoken.py,sha256=JprsSPujwChjHcr7LYy-94t6QgNt0CGUDfXYlBoV_xE,832
|
68
|
+
beswarm/aient/test/test_token.py,sha256=4tR6EOQPL0Tk_TvxxVXIwWmxyguOFRFk8ur5ETK2nG0,3454
|
69
|
+
beswarm/aient/test/test_url.py,sha256=ASE3kT2-ooaX6Flw4botjXnuqaBgutqRWPx3fow5nLg,1894
|
70
|
+
beswarm/aient/test/test_whisper.py,sha256=GxKYzhh3lA8t62V_DDj42VQTXkdjocSFcl5u96WF580,378
|
71
|
+
beswarm/aient/test/test_wildcard.py,sha256=EQwwNrTMHV4CEcZKdwUVGrwtNUsF0CCKbM-_W9IOYsk,693
|
72
|
+
beswarm/aient/test/test_yjh.py,sha256=MsHuBLNOqi3fyX-uboBKmTevkZW_KVv12p-pkF5ir3Y,787
|
73
|
+
beswarm/queries/tree-sitter-language-pack/README.md,sha256=ivZSEuWqYfUVLZl2AZZGRlm0bQsaG-VTBKBwACyM07k,291
|
74
|
+
beswarm/queries/tree-sitter-language-pack/arduino-tags.scm,sha256=HbgdothT9Jjk56COXTtUkVAdZ14rZNnqzLbWVLeRs5U,177
|
75
|
+
beswarm/queries/tree-sitter-language-pack/c-tags.scm,sha256=EIz45o5hBh8yEuck5ZR_4IpcGyWSeNrzxFmtkKZGt2k,461
|
76
|
+
beswarm/queries/tree-sitter-language-pack/chatito-tags.scm,sha256=ISkmrp5gIVxoYIPnoqxxqBlZj5G9tzhwJMx6b0dEKnQ,338
|
77
|
+
beswarm/queries/tree-sitter-language-pack/commonlisp-tags.scm,sha256=GYJlluTPEdrxn4jpYTX5YQAqk171rVBw7IBiCygMgtw,4713
|
78
|
+
beswarm/queries/tree-sitter-language-pack/cpp-tags.scm,sha256=2fSqTUcc01ABMHkA0JeG8axEOEXRfEIul8UKc9_tKGI,809
|
79
|
+
beswarm/queries/tree-sitter-language-pack/csharp-tags.scm,sha256=KORfK3ehKor6Pf6T5iniuoQr16EcHtUe0q3XIsCjPJs,1162
|
80
|
+
beswarm/queries/tree-sitter-language-pack/d-tags.scm,sha256=LDP3orqZ98TTFSkV_PODEs8LspTcCqUMvKcLdZwtgkc,1420
|
81
|
+
beswarm/queries/tree-sitter-language-pack/dart-tags.scm,sha256=Pa_leZjxxXQO7mH_zF5o-kZ5lqVxgvbyp8oQb_nZ9KA,2267
|
82
|
+
beswarm/queries/tree-sitter-language-pack/elisp-tags.scm,sha256=1r8iOMM_DEpXEvlA1rE7KlhGEzcqa2W6eH4F2d1iu7Y,246
|
83
|
+
beswarm/queries/tree-sitter-language-pack/elixir-tags.scm,sha256=fg9TDpbCixLr8UXNcNnfgFlR3Y7d3vtzLRb3LK84UaQ,1682
|
84
|
+
beswarm/queries/tree-sitter-language-pack/elm-tags.scm,sha256=Wp1D5wEGzFa_2biBWRaKbghDs57lDGqqsZd7DbPkdn4,953
|
85
|
+
beswarm/queries/tree-sitter-language-pack/gleam-tags.scm,sha256=wdFVAkepPAZ10-5sBIVQSl45v95wZP9Foi_iYvM4YII,1416
|
86
|
+
beswarm/queries/tree-sitter-language-pack/go-tags.scm,sha256=TE4fQ7PtQvHKPetrhHeDqjMz01KFKFsxFjypnJMv8pI,1339
|
87
|
+
beswarm/queries/tree-sitter-language-pack/java-tags.scm,sha256=Xid8cnOPL1v5SOtxfq8dOi98bWrUPL7XeO8_I2qBrfE,624
|
88
|
+
beswarm/queries/tree-sitter-language-pack/javascript-tags.scm,sha256=0qlZIwDdsvoEGM0cYD3s2ez27FbYuz8epZAo-cLP1uI,2306
|
89
|
+
beswarm/queries/tree-sitter-language-pack/lua-tags.scm,sha256=lqhCVn7KnBVhW8oo_wY9me15nEBTu9BS5YlF1zUTOPs,945
|
90
|
+
beswarm/queries/tree-sitter-language-pack/pony-tags.scm,sha256=gGNWmiHzv8Ge0HZo81tev-xIqHIQqjRxPR52G048-zs,2191
|
91
|
+
beswarm/queries/tree-sitter-language-pack/properties-tags.scm,sha256=AbcjxhGpG6F6lpCHs83HRXD223b-wrHQYv-i9j09wtc,135
|
92
|
+
beswarm/queries/tree-sitter-language-pack/python-tags.scm,sha256=KDCrM7iaUwXZ_hb2wVHrE2_EVCq_ASo3-BmbzsLtFk0,437
|
93
|
+
beswarm/queries/tree-sitter-language-pack/r-tags.scm,sha256=3cb2Wt-8Tt1RGBNDPgo4nI9qROf00ONNVqPHv8Th-Mk,461
|
94
|
+
beswarm/queries/tree-sitter-language-pack/racket-tags.scm,sha256=iri2aFEabiim-geb-t3ClDVp1Zi8T_rX1H9L0tlpqK8,224
|
95
|
+
beswarm/queries/tree-sitter-language-pack/ruby-tags.scm,sha256=vIidsCeE2A0vdFN18yXKqUWmpXMrGXyo4un_0Mxqr6s,1290
|
96
|
+
beswarm/queries/tree-sitter-language-pack/rust-tags.scm,sha256=3rz1XqKaOPKPWRUNPTW5OX_TYEDj5tQZfMxBH3EMB6g,1451
|
97
|
+
beswarm/queries/tree-sitter-language-pack/solidity-tags.scm,sha256=3uCJsbhwp-dVTiSsrGLt-PQ0uAnjmqUeHFPSEXd2JvM,1395
|
98
|
+
beswarm/queries/tree-sitter-language-pack/swift-tags.scm,sha256=ZvJcfjmUDZ9w14AXKSPPxf4gvpdE_qzBxDjfCczYrIQ,1439
|
99
|
+
beswarm/queries/tree-sitter-language-pack/udev-tags.scm,sha256=avj3u4prIR7o8hymHezOsqrOqjPSLGYo7C_lOL4Dxlg,417
|
100
|
+
beswarm/queries/tree-sitter-languages/README.md,sha256=xE2gaSTeKL13T-ebi3S_PxbPTwRQOm9ymcisZwt6-qI,2467
|
101
|
+
beswarm/queries/tree-sitter-languages/c-tags.scm,sha256=EIz45o5hBh8yEuck5ZR_4IpcGyWSeNrzxFmtkKZGt2k,461
|
102
|
+
beswarm/queries/tree-sitter-languages/c_sharp-tags.scm,sha256=wKyFtOFIk-kqIFB2yJBbu1VGRUhdkAnDpxo8sXubkjw,1025
|
103
|
+
beswarm/queries/tree-sitter-languages/cpp-tags.scm,sha256=cAFwtQk3ZKsvCVWrp1fmhSwOP8WGTCEDRR5CQuzLlY4,803
|
104
|
+
beswarm/queries/tree-sitter-languages/dart-tags.scm,sha256=AjxpyJIXuLjP5u3U89bhWergxus0fbUKk1x1uIHCKPw,2251
|
105
|
+
beswarm/queries/tree-sitter-languages/elisp-tags.scm,sha256=wjm1YYD1vgjBbh0E2CzUnmagl82Uq6-LcEojmvhiJkY,332
|
106
|
+
beswarm/queries/tree-sitter-languages/elixir-tags.scm,sha256=eO20nPIwI7_vq4Fob6U5RjX1wLKgn6Gglj41ITpE6eg,1605
|
107
|
+
beswarm/queries/tree-sitter-languages/elm-tags.scm,sha256=4qTEWJCAd7_BOfwyky0q_NYzAMtGdiq7qwo1GIhXmag,951
|
108
|
+
beswarm/queries/tree-sitter-languages/go-tags.scm,sha256=mHtS5NEuxWJGfVz1rq4YlJRMYVDAl5tf7iYnm6RikVE,848
|
109
|
+
beswarm/queries/tree-sitter-languages/hcl-tags.scm,sha256=yOVCBeF4C3ZrFG-gg0adWg2QkxylPcI2dbVeEgD7EPE,2137
|
110
|
+
beswarm/queries/tree-sitter-languages/java-tags.scm,sha256=7WKb-djGv0Ief6XEWQPYpfLpgJHtMPPukIUi55PegvE,627
|
111
|
+
beswarm/queries/tree-sitter-languages/javascript-tags.scm,sha256=svVct6pxbcYP_-xEBwzGy6t1SlN7ajkEUCivUkBZn_Q,2251
|
112
|
+
beswarm/queries/tree-sitter-languages/kotlin-tags.scm,sha256=ugk8v7Or3PXiBk-_HfZznwLuV-b-s3TYm03Wm3q2h_o,632
|
113
|
+
beswarm/queries/tree-sitter-languages/ocaml-tags.scm,sha256=NAcyzmQuQPUjkchrQvcfhsvKqdcqbAt5eFb1chfEhMA,2695
|
114
|
+
beswarm/queries/tree-sitter-languages/php-tags.scm,sha256=vmE5CH2N46HiQxUpR_FL41ilQqsWsigojiacWXtwTuE,714
|
115
|
+
beswarm/queries/tree-sitter-languages/python-tags.scm,sha256=6-npVJM6y6C1q7d6VgcfohN75_iu7QtrLnvwO_L2EmA,325
|
116
|
+
beswarm/queries/tree-sitter-languages/ql-tags.scm,sha256=9qVpBGSgFC9fSK4E_5sO2gYe4_jPvN-D18SD6S5lNR8,707
|
117
|
+
beswarm/queries/tree-sitter-languages/ruby-tags.scm,sha256=vIidsCeE2A0vdFN18yXKqUWmpXMrGXyo4un_0Mxqr6s,1290
|
118
|
+
beswarm/queries/tree-sitter-languages/rust-tags.scm,sha256=9ljM1nzhfPs_ZTRw7cr2P9ToOyhGcKkCoN4_HPXSWi4,1451
|
119
|
+
beswarm/queries/tree-sitter-languages/scala-tags.scm,sha256=UxQjz80JIrrJ7Pm56uUnQyThfmQNvwk7aQzPNypB-Ao,1761
|
120
|
+
beswarm/queries/tree-sitter-languages/typescript-tags.scm,sha256=OMdCeedPiA24ky82DpgTMKXK_l2ySTuF2zrQ2fJAi9E,1253
|
121
|
+
beswarm/tools/__init__.py,sha256=1QLRX95kJSdCKW8OvAJCg67qlzsU9juU60ciZvUGq00,761
|
122
|
+
beswarm/tools/edit_file.py,sha256=qKOVanfh_79eavRrqqyFirRo07sZ897jUL2PD4GRKJk,6965
|
123
|
+
beswarm/tools/planner.py,sha256=lguBCS6kpwNPoXQvqH-WySabVubT82iyWOkJnjt6dXw,1265
|
124
|
+
beswarm/tools/repomap.py,sha256=DhZewVr3fsjau3S9uCpx723uFliteb-QvSpeArDgnU8,40692
|
125
|
+
beswarm/tools/search_arxiv.py,sha256=9slwBemXjEqrd7-YgVmyMijPXlkhZCybEDRVhWVQ9B0,7937
|
126
|
+
beswarm/tools/think.py,sha256=WLw-7jNIsnS6n8MMSYUin_f-BGLENFmnKM2LISEp0co,1760
|
127
|
+
beswarm/tools/worker.py,sha256=ScNl-boB0w_YKAqbcrPHmj1Wg_Jq9d7bmW34vEx1MSs,4975
|
128
|
+
beswarm-0.1.13.dist-info/METADATA,sha256=4Jx7m989HBHWNHDrV34KY-YOZz9GW8qpXj7pabqoyFw,2229
|
129
|
+
beswarm-0.1.13.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
|
130
|
+
beswarm-0.1.13.dist-info/top_level.txt,sha256=pJw4O87wvt5882smuSO6DfByJz7FJ8SxxT8h9fHCmpo,8
|
131
|
+
beswarm-0.1.13.dist-info/RECORD,,
|
beswarm-0.1.12.dist-info/RECORD
DELETED
@@ -1,61 +0,0 @@
|
|
1
|
-
beswarm/__init__.py,sha256=HZjUOJtZR5QhMuDbq-wukQQn1VrBusNWai_ysGo-VVI,20
|
2
|
-
beswarm/utils.py,sha256=AdDCcqAIIKQEMl7PfryVgeT9G5sHe7QNsZnrvmTGA8E,283
|
3
|
-
beswarm/queries/tree-sitter-language-pack/README.md,sha256=ivZSEuWqYfUVLZl2AZZGRlm0bQsaG-VTBKBwACyM07k,291
|
4
|
-
beswarm/queries/tree-sitter-language-pack/arduino-tags.scm,sha256=HbgdothT9Jjk56COXTtUkVAdZ14rZNnqzLbWVLeRs5U,177
|
5
|
-
beswarm/queries/tree-sitter-language-pack/c-tags.scm,sha256=EIz45o5hBh8yEuck5ZR_4IpcGyWSeNrzxFmtkKZGt2k,461
|
6
|
-
beswarm/queries/tree-sitter-language-pack/chatito-tags.scm,sha256=ISkmrp5gIVxoYIPnoqxxqBlZj5G9tzhwJMx6b0dEKnQ,338
|
7
|
-
beswarm/queries/tree-sitter-language-pack/commonlisp-tags.scm,sha256=GYJlluTPEdrxn4jpYTX5YQAqk171rVBw7IBiCygMgtw,4713
|
8
|
-
beswarm/queries/tree-sitter-language-pack/cpp-tags.scm,sha256=2fSqTUcc01ABMHkA0JeG8axEOEXRfEIul8UKc9_tKGI,809
|
9
|
-
beswarm/queries/tree-sitter-language-pack/csharp-tags.scm,sha256=KORfK3ehKor6Pf6T5iniuoQr16EcHtUe0q3XIsCjPJs,1162
|
10
|
-
beswarm/queries/tree-sitter-language-pack/d-tags.scm,sha256=LDP3orqZ98TTFSkV_PODEs8LspTcCqUMvKcLdZwtgkc,1420
|
11
|
-
beswarm/queries/tree-sitter-language-pack/dart-tags.scm,sha256=Pa_leZjxxXQO7mH_zF5o-kZ5lqVxgvbyp8oQb_nZ9KA,2267
|
12
|
-
beswarm/queries/tree-sitter-language-pack/elisp-tags.scm,sha256=1r8iOMM_DEpXEvlA1rE7KlhGEzcqa2W6eH4F2d1iu7Y,246
|
13
|
-
beswarm/queries/tree-sitter-language-pack/elixir-tags.scm,sha256=fg9TDpbCixLr8UXNcNnfgFlR3Y7d3vtzLRb3LK84UaQ,1682
|
14
|
-
beswarm/queries/tree-sitter-language-pack/elm-tags.scm,sha256=Wp1D5wEGzFa_2biBWRaKbghDs57lDGqqsZd7DbPkdn4,953
|
15
|
-
beswarm/queries/tree-sitter-language-pack/gleam-tags.scm,sha256=wdFVAkepPAZ10-5sBIVQSl45v95wZP9Foi_iYvM4YII,1416
|
16
|
-
beswarm/queries/tree-sitter-language-pack/go-tags.scm,sha256=TE4fQ7PtQvHKPetrhHeDqjMz01KFKFsxFjypnJMv8pI,1339
|
17
|
-
beswarm/queries/tree-sitter-language-pack/java-tags.scm,sha256=Xid8cnOPL1v5SOtxfq8dOi98bWrUPL7XeO8_I2qBrfE,624
|
18
|
-
beswarm/queries/tree-sitter-language-pack/javascript-tags.scm,sha256=0qlZIwDdsvoEGM0cYD3s2ez27FbYuz8epZAo-cLP1uI,2306
|
19
|
-
beswarm/queries/tree-sitter-language-pack/lua-tags.scm,sha256=lqhCVn7KnBVhW8oo_wY9me15nEBTu9BS5YlF1zUTOPs,945
|
20
|
-
beswarm/queries/tree-sitter-language-pack/pony-tags.scm,sha256=gGNWmiHzv8Ge0HZo81tev-xIqHIQqjRxPR52G048-zs,2191
|
21
|
-
beswarm/queries/tree-sitter-language-pack/properties-tags.scm,sha256=AbcjxhGpG6F6lpCHs83HRXD223b-wrHQYv-i9j09wtc,135
|
22
|
-
beswarm/queries/tree-sitter-language-pack/python-tags.scm,sha256=KDCrM7iaUwXZ_hb2wVHrE2_EVCq_ASo3-BmbzsLtFk0,437
|
23
|
-
beswarm/queries/tree-sitter-language-pack/r-tags.scm,sha256=3cb2Wt-8Tt1RGBNDPgo4nI9qROf00ONNVqPHv8Th-Mk,461
|
24
|
-
beswarm/queries/tree-sitter-language-pack/racket-tags.scm,sha256=iri2aFEabiim-geb-t3ClDVp1Zi8T_rX1H9L0tlpqK8,224
|
25
|
-
beswarm/queries/tree-sitter-language-pack/ruby-tags.scm,sha256=vIidsCeE2A0vdFN18yXKqUWmpXMrGXyo4un_0Mxqr6s,1290
|
26
|
-
beswarm/queries/tree-sitter-language-pack/rust-tags.scm,sha256=3rz1XqKaOPKPWRUNPTW5OX_TYEDj5tQZfMxBH3EMB6g,1451
|
27
|
-
beswarm/queries/tree-sitter-language-pack/solidity-tags.scm,sha256=3uCJsbhwp-dVTiSsrGLt-PQ0uAnjmqUeHFPSEXd2JvM,1395
|
28
|
-
beswarm/queries/tree-sitter-language-pack/swift-tags.scm,sha256=ZvJcfjmUDZ9w14AXKSPPxf4gvpdE_qzBxDjfCczYrIQ,1439
|
29
|
-
beswarm/queries/tree-sitter-language-pack/udev-tags.scm,sha256=avj3u4prIR7o8hymHezOsqrOqjPSLGYo7C_lOL4Dxlg,417
|
30
|
-
beswarm/queries/tree-sitter-languages/README.md,sha256=xE2gaSTeKL13T-ebi3S_PxbPTwRQOm9ymcisZwt6-qI,2467
|
31
|
-
beswarm/queries/tree-sitter-languages/c-tags.scm,sha256=EIz45o5hBh8yEuck5ZR_4IpcGyWSeNrzxFmtkKZGt2k,461
|
32
|
-
beswarm/queries/tree-sitter-languages/c_sharp-tags.scm,sha256=wKyFtOFIk-kqIFB2yJBbu1VGRUhdkAnDpxo8sXubkjw,1025
|
33
|
-
beswarm/queries/tree-sitter-languages/cpp-tags.scm,sha256=cAFwtQk3ZKsvCVWrp1fmhSwOP8WGTCEDRR5CQuzLlY4,803
|
34
|
-
beswarm/queries/tree-sitter-languages/dart-tags.scm,sha256=AjxpyJIXuLjP5u3U89bhWergxus0fbUKk1x1uIHCKPw,2251
|
35
|
-
beswarm/queries/tree-sitter-languages/elisp-tags.scm,sha256=wjm1YYD1vgjBbh0E2CzUnmagl82Uq6-LcEojmvhiJkY,332
|
36
|
-
beswarm/queries/tree-sitter-languages/elixir-tags.scm,sha256=eO20nPIwI7_vq4Fob6U5RjX1wLKgn6Gglj41ITpE6eg,1605
|
37
|
-
beswarm/queries/tree-sitter-languages/elm-tags.scm,sha256=4qTEWJCAd7_BOfwyky0q_NYzAMtGdiq7qwo1GIhXmag,951
|
38
|
-
beswarm/queries/tree-sitter-languages/go-tags.scm,sha256=mHtS5NEuxWJGfVz1rq4YlJRMYVDAl5tf7iYnm6RikVE,848
|
39
|
-
beswarm/queries/tree-sitter-languages/hcl-tags.scm,sha256=yOVCBeF4C3ZrFG-gg0adWg2QkxylPcI2dbVeEgD7EPE,2137
|
40
|
-
beswarm/queries/tree-sitter-languages/java-tags.scm,sha256=7WKb-djGv0Ief6XEWQPYpfLpgJHtMPPukIUi55PegvE,627
|
41
|
-
beswarm/queries/tree-sitter-languages/javascript-tags.scm,sha256=svVct6pxbcYP_-xEBwzGy6t1SlN7ajkEUCivUkBZn_Q,2251
|
42
|
-
beswarm/queries/tree-sitter-languages/kotlin-tags.scm,sha256=ugk8v7Or3PXiBk-_HfZznwLuV-b-s3TYm03Wm3q2h_o,632
|
43
|
-
beswarm/queries/tree-sitter-languages/ocaml-tags.scm,sha256=NAcyzmQuQPUjkchrQvcfhsvKqdcqbAt5eFb1chfEhMA,2695
|
44
|
-
beswarm/queries/tree-sitter-languages/php-tags.scm,sha256=vmE5CH2N46HiQxUpR_FL41ilQqsWsigojiacWXtwTuE,714
|
45
|
-
beswarm/queries/tree-sitter-languages/python-tags.scm,sha256=6-npVJM6y6C1q7d6VgcfohN75_iu7QtrLnvwO_L2EmA,325
|
46
|
-
beswarm/queries/tree-sitter-languages/ql-tags.scm,sha256=9qVpBGSgFC9fSK4E_5sO2gYe4_jPvN-D18SD6S5lNR8,707
|
47
|
-
beswarm/queries/tree-sitter-languages/ruby-tags.scm,sha256=vIidsCeE2A0vdFN18yXKqUWmpXMrGXyo4un_0Mxqr6s,1290
|
48
|
-
beswarm/queries/tree-sitter-languages/rust-tags.scm,sha256=9ljM1nzhfPs_ZTRw7cr2P9ToOyhGcKkCoN4_HPXSWi4,1451
|
49
|
-
beswarm/queries/tree-sitter-languages/scala-tags.scm,sha256=UxQjz80JIrrJ7Pm56uUnQyThfmQNvwk7aQzPNypB-Ao,1761
|
50
|
-
beswarm/queries/tree-sitter-languages/typescript-tags.scm,sha256=OMdCeedPiA24ky82DpgTMKXK_l2ySTuF2zrQ2fJAi9E,1253
|
51
|
-
beswarm/tools/__init__.py,sha256=1QLRX95kJSdCKW8OvAJCg67qlzsU9juU60ciZvUGq00,761
|
52
|
-
beswarm/tools/edit_file.py,sha256=qKOVanfh_79eavRrqqyFirRo07sZ897jUL2PD4GRKJk,6965
|
53
|
-
beswarm/tools/planner.py,sha256=lguBCS6kpwNPoXQvqH-WySabVubT82iyWOkJnjt6dXw,1265
|
54
|
-
beswarm/tools/repomap.py,sha256=DhZewVr3fsjau3S9uCpx723uFliteb-QvSpeArDgnU8,40692
|
55
|
-
beswarm/tools/search_arxiv.py,sha256=9slwBemXjEqrd7-YgVmyMijPXlkhZCybEDRVhWVQ9B0,7937
|
56
|
-
beswarm/tools/think.py,sha256=WLw-7jNIsnS6n8MMSYUin_f-BGLENFmnKM2LISEp0co,1760
|
57
|
-
beswarm/tools/worker.py,sha256=ScNl-boB0w_YKAqbcrPHmj1Wg_Jq9d7bmW34vEx1MSs,4975
|
58
|
-
beswarm-0.1.12.dist-info/METADATA,sha256=nm23lFOJWD551WafBtR0JxB0p88LMpgYke6sN3ZfiIE,2229
|
59
|
-
beswarm-0.1.12.dist-info/WHEEL,sha256=SmOxYU7pzNKBqASvQJ7DjX3XGUF92lrGhMb3R6_iiqI,91
|
60
|
-
beswarm-0.1.12.dist-info/top_level.txt,sha256=pJw4O87wvt5882smuSO6DfByJz7FJ8SxxT8h9fHCmpo,8
|
61
|
-
beswarm-0.1.12.dist-info/RECORD,,
|
File without changes
|
File without changes
|