alayaflow 0.1.2__py3-none-any.whl → 0.1.3__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.
alayaflow/__init__.py CHANGED
@@ -1,5 +1,5 @@
1
1
  """AlayaFlow - A desktop platform for executing LangGraph workflows with multiple executors."""
2
2
 
3
3
 
4
- __version__ = "0.1.2"
4
+ __version__ = "0.1.3"
5
5
 
@@ -18,17 +18,14 @@ class LLMComponent:
18
18
  def __init__(
19
19
  self,
20
20
  *,
21
- # ===== 模型 & prompt =====
22
21
  model_id: str,
23
22
  system_prompt: str,
24
23
  prompt: str,
25
24
 
26
- # ===== 采样参数 =====
27
25
  temperature: Optional[float] = None,
28
26
  top_p: Optional[float] = None,
29
27
  max_tokens: Optional[int] = None,
30
28
 
31
- # ===== 输出控制 =====
32
29
  response_format: ResponseFormat = ResponseFormat.TEXT,
33
30
  json_schema: Optional[Dict[str, Any]] = None,
34
31
  outputs: Optional[Dict[str, str]] = None,
@@ -47,6 +44,9 @@ class LLMComponent:
47
44
  self.json_schema = json_schema
48
45
  self.outputs = outputs or {}
49
46
  self.retry_json_once = retry_json_once
47
+
48
+ # —— 依赖注入(获取全局单例 ModelManager)——
49
+ self._model_manager = ModelManager()
50
50
 
51
51
  def _get_llm(self) -> Runnable:
52
52
  bind_kwargs: Dict[str, Any] = {}
@@ -58,8 +58,7 @@ class LLMComponent:
58
58
  if self.max_tokens is not None:
59
59
  bind_kwargs["max_tokens"] = self.max_tokens
60
60
 
61
- model_manager = ModelManager()
62
- llm = model_manager.get_model(self.model_id, runtime_config=bind_kwargs)
61
+ llm = self._model_manager.get_model(self.model_id, runtime_config=bind_kwargs)
63
62
 
64
63
  return llm
65
64
 
@@ -7,5 +7,71 @@ class RetrieveComponent:
7
7
  self.client = client
8
8
 
9
9
  def __call__(self, query: str, collection_name: str, limit: int = 3) -> list[str]:
10
- result = self.client.vdb_query([query], limit, collection_name)
11
- return result.get('documents', [[]])[0] if result.get('documents') else []
10
+ # result = self.client.vdb_query([query], limit, collection_name)
11
+ # return result.get('documents', [[]])[0] if result.get('documents') else []
12
+ docs: list[str] = []
13
+
14
+ # -------- 基础个人信息 --------
15
+ if "姓名" in query:
16
+ docs.extend([
17
+ "用户姓名是张三。",
18
+ "张三,男,1989年出生。",
19
+ ])
20
+
21
+ if "性别" in query:
22
+ docs.append("张三,男,工程师。")
23
+
24
+ if "年龄" in query:
25
+ docs.append("张三,1989年出生,今年34岁。")
26
+
27
+ # -------- 联系方式 --------
28
+ if "电话" in query:
29
+ docs.extend([
30
+ "联系电话:15643431212。",
31
+ "手机号为15643431212,可随时联系。",
32
+ ])
33
+
34
+ if "邮箱" in query or "Email" in query:
35
+ docs.extend([
36
+ "电子邮箱:273230101@qq.com。",
37
+ "邮箱地址为 27223221@qq.com。",
38
+ ])
39
+
40
+ # -------- 工作单位 / 职务 --------
41
+ if "工作单位" in query or "公司" in query:
42
+ docs.extend([
43
+ "现就职于 Google 中国。",
44
+ "工作单位为 Google。",
45
+ ])
46
+
47
+ if "职务" in query or "职位" in query:
48
+ docs.append("现任高级软件工程师。")
49
+
50
+ # -------- 教育背景 --------
51
+ if "学历" in query or "教育" in query:
52
+ docs.extend([
53
+ "2016年本科毕业于清华大学计算机科学与技术专业。",
54
+ "2020年博士毕业于北京大学。",
55
+ ])
56
+
57
+ # -------- 工作 / 学习经历 --------
58
+ if "学习工作经历" in query or "经历" in query:
59
+ docs.extend([
60
+ "2010.09-2014.07 就读于清华大学计算机科学与技术专业。",
61
+ "2014.07-2016.08 在百度公司担任软件开发工程师。",
62
+ "2016.09 至今在 Google 担任高级软件工程师。",
63
+ ])
64
+
65
+ # -------- 路径/父字段增强(模拟更真实检索)--------
66
+ if "个人信息" in query and not docs:
67
+ docs.append("张三,男,1989年出生,工程师,现居北京。")
68
+
69
+ if "联系方式" in query and not docs:
70
+ docs.append("联系方式:电话 15643431212,邮箱 272040101@qq.com。")
71
+
72
+ # -------- 兜底:模拟找不到 --------
73
+ if not docs:
74
+ return []
75
+
76
+ # limit 截断
77
+ return docs[:limit]
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: alayaflow
3
- Version: 0.1.2
3
+ Version: 0.1.3
4
4
  Summary: A desktop platform for executing LangGraph workflows with uv-managed sandboxes.
5
5
  Author-email: alayaflow group <dev@example.com>
6
6
  License: MIT
@@ -1,4 +1,4 @@
1
- alayaflow/__init__.py,sha256=_EoEy39ORwhkwio9UhypCa7wCJSLmxv6reHH1Aqt5Kw,121
1
+ alayaflow/__init__.py,sha256=ZQGg3KVDYQcq_LK1TLcFuRtc1KFKYva_AoumPeVlOMM,121
2
2
  alayaflow/api/__init__.py,sha256=y6nWgqC3jhOffTqixKlv3OU_NEAFxbzHSvwJrE5bHNs,187
3
3
  alayaflow/api/api_singleton.py,sha256=SvWeLHPYHT1ABACwmoNj2dWrFjpqLCpSMz1-KW3hsZQ,11640
4
4
  alayaflow/clients/alayamem/base_client.py,sha256=pyU2WF2jqNEgBEe8JOZSg13gHQ2pJcBgJ_6YP-5mWkw,540
@@ -7,9 +7,9 @@ alayaflow/common/config.py,sha256=pi4zH_Pi0u6Fb8ZIs4u3qFOUOUeqxxUqqksoUp-hynM,38
7
7
  alayaflow/component/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
8
  alayaflow/component/chat_model.py,sha256=GH2xcOhtvh3YqN2LMITmu1j-0_-t9d4hiMuRFctF2og,402
9
9
  alayaflow/component/intent_classifier.py,sha256=5KH52LIqIDpw2hlX4gi3Ff7SFVhenCFdFV-fXag0sDM,3765
10
- alayaflow/component/llm_node.py,sha256=rvj1f8gqKmdGZkM8Mo8z1PDafdpxhn52nT8L19ZxmaI,3510
10
+ alayaflow/component/llm_node.py,sha256=2QfiWew99EVQ05UpA7IkepefpOFHqb4Wxo_tYOipekc,3496
11
11
  alayaflow/component/memory.py,sha256=Xl5ABW89dswC9oMwkeS6NFAZniKFw8BuGuLAAHddRRA,1448
12
- alayaflow/component/retrieve_node.py,sha256=mPzAiAXMCGWFYLnmU7kHuf9ejUhzpE_QSHJwc7LOlAU,451
12
+ alayaflow/component/retrieve_node.py,sha256=FlKyGH767ZbS4ss5SGcprp-sRsY4jA0YdlNP4OFzgQU,2842
13
13
  alayaflow/component/search_node.py,sha256=JNFD6qXDd2_NPpXQf7z8xklJFZs7UrFhWet43nrs25Y,4950
14
14
  alayaflow/component/web_search.py,sha256=HZp9j0X0YMBC_mhGqzi0g0pbvmlWiLiNdRxzbEFzl6s,3403
15
15
  alayaflow/component/langflow/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -35,7 +35,7 @@ alayaflow/workflow/workflow_manager.py,sha256=dUFS6B5V64mdsopxrM6f3LvJn497eTBqMJ
35
35
  alayaflow/workflow/runnable/__init__.py,sha256=sNybFeRxLwbDLHiZxlVFXsn3w2n1Jn0Mtun2W6fvjFU,257
36
36
  alayaflow/workflow/runnable/base_runnable_workflow.py,sha256=ap53fOeC5iUh2zm45LpEDjLJ4uqfO2C6FCN6WGm13kw,776
37
37
  alayaflow/workflow/runnable/state_graph_runnable_workflow.py,sha256=PMSHks46kmNM2uDVmf5TNcLW7AR6dgfJFohxs8Dcfm4,972
38
- alayaflow-0.1.2.dist-info/METADATA,sha256=CMWzmY6f6eWQNd6l8vC-PXnfIsSpoyDaNP18vlEGZZo,1925
39
- alayaflow-0.1.2.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
40
- alayaflow-0.1.2.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
41
- alayaflow-0.1.2.dist-info/RECORD,,
38
+ alayaflow-0.1.3.dist-info/METADATA,sha256=aMfRyIwPukXW80Am5h8ApPNiBbL4mRZcfaOtMQflVL4,1925
39
+ alayaflow-0.1.3.dist-info/WHEEL,sha256=WLgqFyCfm_KASv4WHyYy0P3pM_m7J5L9k2skdKLirC8,87
40
+ alayaflow-0.1.3.dist-info/licenses/LICENSE,sha256=hIahDEOTzuHCU5J2nd07LWwkLW7Hko4UFO__ffsvB-8,34523
41
+ alayaflow-0.1.3.dist-info/RECORD,,