auto-coder 0.1.230__tar.gz → 0.1.232__tar.gz
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.
Potentially problematic release.
This version of auto-coder might be problematic. Click here for more details.
- {auto_coder-0.1.230 → auto_coder-0.1.232}/PKG-INFO +2 -2
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/auto_coder.egg-info/PKG-INFO +2 -2
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/auto_coder.egg-info/requires.txt +1 -1
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/auto_coder.py +7 -4
- auto_coder-0.1.232/src/autocoder/common/utils_code_auto_generate.py +90 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/auto_coder_utils/chat_stream_out.py +1 -1
- auto_coder-0.1.232/src/autocoder/version.py +1 -0
- auto_coder-0.1.230/src/autocoder/common/utils_code_auto_generate.py +0 -38
- auto_coder-0.1.230/src/autocoder/version.py +0 -1
- {auto_coder-0.1.230 → auto_coder-0.1.232}/LICENSE +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/README.md +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/setup.cfg +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/setup.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/auto_coder.egg-info/SOURCES.txt +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/auto_coder.egg-info/dependency_links.txt +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/auto_coder.egg-info/entry_points.txt +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/auto_coder.egg-info/top_level.txt +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/agent/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/agent/auto_demand_organizer.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/agent/auto_filegroup.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/agent/auto_guess_query.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/agent/auto_tool.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/agent/coder.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/agent/designer.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/agent/planner.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/agent/project_reader.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/auto_coder_lang.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/auto_coder_rag.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/auto_coder_rag_client_mcp.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/auto_coder_rag_mcp.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/auto_coder_server.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/benchmark.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/chat/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/chat_auto_coder.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/chat_auto_coder_lang.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/command_args.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/JupyterClient.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/ShellClient.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/anything2images.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/anything2img.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/audio.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/buildin_tokenizer.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/chunk_validation.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/cleaner.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_execute.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_generate.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_generate_diff.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_generate_editblock.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_generate_strict_diff.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_merge.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_merge_diff.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_merge_editblock.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_merge_strict_diff.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_modification_ranker.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/command_completer.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/command_generator.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/command_templates.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/const.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/files.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/git_utils.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/image_to_page.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/interpreter.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/llm_rerank.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/mcp_hub.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/mcp_server.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/mcp_servers/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/mcp_servers/mcp_server_perplexity.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/mcp_tools.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/memory_manager.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/recall_validation.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/screenshots.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/search.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/search_replace.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/sys_prompt.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/text.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/types.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/data/tokenizer.json +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/db/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/db/store.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/dispacher/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/dispacher/actions/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/dispacher/actions/action.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/dispacher/actions/copilot.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/dispacher/actions/plugins/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/dispacher/actions/plugins/action_regex_project.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/dispacher/actions/plugins/action_translate.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/index/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/index/for_command.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/index/index.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/index/symbols_utils.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/index/types.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/lang.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/models.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/pyproject/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/api_server.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/cache/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/cache/base_cache.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/cache/byzer_storage_cache.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/cache/file_monitor_cache.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/cache/simple_cache.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/doc_filter.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/document_retriever.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/llm_wrapper.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/loaders/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/loaders/docx_loader.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/loaders/excel_loader.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/loaders/pdf_loader.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/loaders/ppt_loader.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/long_context_rag.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/rag_config.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/rag_entry.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/raw_rag.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/relevant_utils.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/simple_directory_reader.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/simple_rag.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/stream_event/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/stream_event/event_writer.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/stream_event/types.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/token_checker.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/token_counter.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/token_limiter.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/types.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/utils.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/rag/variable_holder.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/regexproject/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/suffixproject/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/tsproject/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/_markitdown.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/auto_coder_utils/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/chat_auto_coder_utils/__init__.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/conversation_store.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/llm_client_interceptors.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/llms.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/log_capture.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/multi_turn.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/operate_config_api.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/print_table.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/queue_communicate.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/request_event_queue.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/request_queue.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/rest.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/tests.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/tests/test_action_regex_project.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/tests/test_chat_auto_coder.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/tests/test_code_auto_merge_editblock.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/tests/test_command_completer.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/tests/test_planner.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/tests/test_queue_communicate.py +0 -0
- {auto_coder-0.1.230 → auto_coder-0.1.232}/tests/test_symbols_utils.py +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: auto-coder
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.232
|
|
4
4
|
Summary: AutoCoder: AutoCoder
|
|
5
5
|
Author: allwefantasy
|
|
6
6
|
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
@@ -26,7 +26,7 @@ Requires-Dist: tabulate
|
|
|
26
26
|
Requires-Dist: jupyter_client
|
|
27
27
|
Requires-Dist: prompt-toolkit
|
|
28
28
|
Requires-Dist: tokenizers
|
|
29
|
-
Requires-Dist: byzerllm[saas]>=0.1.
|
|
29
|
+
Requires-Dist: byzerllm[saas]>=0.1.151
|
|
30
30
|
Requires-Dist: patch
|
|
31
31
|
Requires-Dist: diff_match_patch
|
|
32
32
|
Requires-Dist: GitPython
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.1
|
|
2
2
|
Name: auto-coder
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.232
|
|
4
4
|
Summary: AutoCoder: AutoCoder
|
|
5
5
|
Author: allwefantasy
|
|
6
6
|
Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
|
|
@@ -26,7 +26,7 @@ Requires-Dist: tabulate
|
|
|
26
26
|
Requires-Dist: jupyter_client
|
|
27
27
|
Requires-Dist: prompt-toolkit
|
|
28
28
|
Requires-Dist: tokenizers
|
|
29
|
-
Requires-Dist: byzerllm[saas]>=0.1.
|
|
29
|
+
Requires-Dist: byzerllm[saas]>=0.1.151
|
|
30
30
|
Requires-Dist: patch
|
|
31
31
|
Requires-Dist: diff_match_patch
|
|
32
32
|
Requires-Dist: GitPython
|
|
@@ -1272,10 +1272,13 @@ def main(input_args: Optional[List[str]] = None):
|
|
|
1272
1272
|
)
|
|
1273
1273
|
)
|
|
1274
1274
|
v = [[response.result,None]]
|
|
1275
|
-
else:
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1275
|
+
else:
|
|
1276
|
+
from autocoder.common.utils_code_auto_generate import stream_chat_with_continue
|
|
1277
|
+
v = stream_chat_with_continue(
|
|
1278
|
+
llm=chat_llm,
|
|
1279
|
+
conversations=loaded_conversations,
|
|
1280
|
+
llm_config={}
|
|
1281
|
+
)
|
|
1279
1282
|
|
|
1280
1283
|
assistant_response, last_meta = stream_out(
|
|
1281
1284
|
v,
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
from byzerllm import ByzerLLM,SimpleByzerLLM
|
|
2
|
+
from typing import Generator, List, Any, Union
|
|
3
|
+
from pydantic import BaseModel
|
|
4
|
+
from loguru import logger
|
|
5
|
+
|
|
6
|
+
class ChatWithContinueResult(BaseModel):
|
|
7
|
+
content: str
|
|
8
|
+
input_tokens_count: int
|
|
9
|
+
generated_tokens_count: int
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def chat_with_continue(llm: Union[ByzerLLM,SimpleByzerLLM], conversations: List[dict], llm_config: dict) -> ChatWithContinueResult:
|
|
13
|
+
final_result = ChatWithContinueResult(content="", input_tokens_count=0, generated_tokens_count=0)
|
|
14
|
+
v = llm.chat_oai(
|
|
15
|
+
conversations=conversations, llm_config=llm_config)
|
|
16
|
+
|
|
17
|
+
single_result = v[0].output
|
|
18
|
+
metadata = v[0].metadata
|
|
19
|
+
|
|
20
|
+
final_result.input_tokens_count += metadata.get("input_tokens_count", 0)
|
|
21
|
+
final_result.generated_tokens_count += metadata.get("generated_tokens_count", 0)
|
|
22
|
+
|
|
23
|
+
temp_conversations = conversations + \
|
|
24
|
+
[{"role": "assistant", "content": single_result}]
|
|
25
|
+
|
|
26
|
+
count = 1
|
|
27
|
+
while (metadata.get("finish_reason", "stop") == "length" and count < 6):
|
|
28
|
+
v = llm.chat_oai(
|
|
29
|
+
conversations=temp_conversations, llm_config={**llm_config, "gen.response_prefix": True})
|
|
30
|
+
metadata = v[0].metadata
|
|
31
|
+
single_result += v[0].output
|
|
32
|
+
final_result.input_tokens_count += metadata.get("input_tokens_count", 0)
|
|
33
|
+
final_result.generated_tokens_count += metadata.get("generated_tokens_count", 0)
|
|
34
|
+
count += 1
|
|
35
|
+
|
|
36
|
+
# if count >= 2:
|
|
37
|
+
# logger.info(f"The code generation is exceed the max length, continue to generate the code {count -1 } times")
|
|
38
|
+
final_result.content = single_result
|
|
39
|
+
return final_result
|
|
40
|
+
|
|
41
|
+
def stream_chat_with_continue(
|
|
42
|
+
llm: Union[ByzerLLM, SimpleByzerLLM],
|
|
43
|
+
conversations: List[dict],
|
|
44
|
+
llm_config: dict
|
|
45
|
+
) -> Generator[Any, None, None]:
|
|
46
|
+
"""
|
|
47
|
+
流式处理并继续生成内容,直到完成。
|
|
48
|
+
|
|
49
|
+
Args:
|
|
50
|
+
llm (Union[ByzerLLM, SimpleByzerLLM]): LLM实例
|
|
51
|
+
conversations (List[dict]): 对话历史
|
|
52
|
+
llm_config (dict): LLM配置参数
|
|
53
|
+
|
|
54
|
+
|
|
55
|
+
"""
|
|
56
|
+
|
|
57
|
+
count = 0
|
|
58
|
+
temp_conversations = conversations
|
|
59
|
+
current_metadata = None
|
|
60
|
+
|
|
61
|
+
while True:
|
|
62
|
+
# 使用流式接口获取生成内容
|
|
63
|
+
stream_generator = llm.stream_chat_oai(
|
|
64
|
+
conversations=temp_conversations,
|
|
65
|
+
delta_mode=True,
|
|
66
|
+
llm_config={**llm_config, "gen.response_prefix": True if count > 0 else False}
|
|
67
|
+
)
|
|
68
|
+
|
|
69
|
+
current_content = ""
|
|
70
|
+
for res in stream_generator:
|
|
71
|
+
content = res[0]
|
|
72
|
+
current_content += content
|
|
73
|
+
if current_metadata is None:
|
|
74
|
+
current_metadata = res[1]
|
|
75
|
+
else:
|
|
76
|
+
current_metadata.generated_tokens_count += res[1].generated_tokens_count
|
|
77
|
+
current_metadata.input_tokens_count += res[1].input_tokens_count
|
|
78
|
+
current_metadata.finish_reason = res[1].finish_reason
|
|
79
|
+
|
|
80
|
+
# Yield 当前的 StreamChatWithContinueResult
|
|
81
|
+
yield (content,current_metadata)
|
|
82
|
+
|
|
83
|
+
# 更新对话历史
|
|
84
|
+
temp_conversations.append({"role": "assistant", "content": current_content})
|
|
85
|
+
|
|
86
|
+
# 检查是否需要继续生成
|
|
87
|
+
if current_metadata.finish_reason != "length" or count >= 5:
|
|
88
|
+
break
|
|
89
|
+
|
|
90
|
+
count += 1
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.1.232"
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
from byzerllm import ByzerLLM
|
|
2
|
-
from typing import List,Any,Union
|
|
3
|
-
from pydantic import BaseModel
|
|
4
|
-
from loguru import logger
|
|
5
|
-
class ChatWithContinueResult(BaseModel):
|
|
6
|
-
content: str
|
|
7
|
-
input_tokens_count: int
|
|
8
|
-
generated_tokens_count: int
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
def chat_with_continue(llm: ByzerLLM, conversations: List[dict], llm_config: dict) -> ChatWithContinueResult:
|
|
12
|
-
final_result = ChatWithContinueResult(content="", input_tokens_count=0, generated_tokens_count=0)
|
|
13
|
-
v = llm.chat_oai(
|
|
14
|
-
conversations=conversations, llm_config=llm_config)
|
|
15
|
-
|
|
16
|
-
single_result = v[0].output
|
|
17
|
-
metadata = v[0].metadata
|
|
18
|
-
|
|
19
|
-
final_result.input_tokens_count += metadata.get("input_tokens_count", 0)
|
|
20
|
-
final_result.generated_tokens_count += metadata.get("generated_tokens_count", 0)
|
|
21
|
-
|
|
22
|
-
temp_conversations = conversations + \
|
|
23
|
-
[{"role": "assistant", "content": single_result}]
|
|
24
|
-
|
|
25
|
-
count = 1
|
|
26
|
-
while (metadata.get("finish_reason", "stop") == "length" and count < 6):
|
|
27
|
-
v = llm.chat_oai(
|
|
28
|
-
conversations=temp_conversations, llm_config={**llm_config, "gen.response_prefix": True})
|
|
29
|
-
metadata = v[0].metadata
|
|
30
|
-
single_result += v[0].output
|
|
31
|
-
final_result.input_tokens_count += metadata.get("input_tokens_count", 0)
|
|
32
|
-
final_result.generated_tokens_count += metadata.get("generated_tokens_count", 0)
|
|
33
|
-
count += 1
|
|
34
|
-
|
|
35
|
-
# if count >= 2:
|
|
36
|
-
# logger.info(f"The code generation is exceed the max length, continue to generate the code {count -1 } times")
|
|
37
|
-
final_result.content = single_result
|
|
38
|
-
return final_result
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "0.1.230"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_generate_editblock.py
RENAMED
|
File without changes
|
{auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_generate_strict_diff.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/code_auto_merge_strict_diff.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/common/mcp_servers/mcp_server_perplexity.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/dispacher/actions/plugins/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{auto_coder-0.1.230 → auto_coder-0.1.232}/src/autocoder/utils/chat_auto_coder_utils/__init__.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|