PraisonAI 2.0.72__cp313-cp313-manylinux_2_39_x86_64.whl → 2.0.74__cp313-cp313-manylinux_2_39_x86_64.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.

Potentially problematic release.


This version of PraisonAI might be problematic. Click here for more details.

praisonai/deploy.py CHANGED
@@ -56,7 +56,7 @@ class CloudDeployer:
56
56
  file.write("FROM python:3.11-slim\n")
57
57
  file.write("WORKDIR /app\n")
58
58
  file.write("COPY . .\n")
59
- file.write("RUN pip install flask praisonai==2.0.72 gunicorn markdown\n")
59
+ file.write("RUN pip install flask praisonai==2.0.74 gunicorn markdown\n")
60
60
  file.write("EXPOSE 8080\n")
61
61
  file.write('CMD ["gunicorn", "-b", "0.0.0.0:8080", "api:app"]\n')
62
62
 
praisonai/train.py CHANGED
@@ -216,25 +216,29 @@ class TrainModel:
216
216
  raw_dataset = self.load_datasets()
217
217
  tokenized_dataset = self.tokenize_dataset(raw_dataset)
218
218
  print("DEBUG: Dataset tokenization complete.")
219
- training_args = TrainingArguments(
220
- per_device_train_batch_size=2,
221
- gradient_accumulation_steps=4,
222
- warmup_steps=5,
223
- max_steps=60,
224
- learning_rate=2e-4,
225
- fp16=not is_bfloat16_supported(),
226
- bf16=is_bfloat16_supported(),
227
- logging_steps=1,
228
- optim="adamw_8bit",
229
- weight_decay=0.01,
230
- lr_scheduler_type="linear",
231
- seed=3407,
232
- output_dir="outputs",
233
- report_to="none" if not os.getenv("PRAISON_WANDB") else "wandb",
234
- save_steps=100 if os.getenv("PRAISON_WANDB") else None,
235
- run_name=os.getenv("PRAISON_WANDB_RUN_NAME", "praisonai-train") if os.getenv("PRAISON_WANDB") else None,
236
- remove_unused_columns=False,
237
- )
219
+ # Build the training arguments parameters dynamically
220
+ ta_params = {
221
+ "per_device_train_batch_size": self.config.get("per_device_train_batch_size", 2),
222
+ "gradient_accumulation_steps": self.config.get("gradient_accumulation_steps", 2),
223
+ "warmup_steps": self.config.get("warmup_steps", 50),
224
+ "max_steps": self.config.get("max_steps", 2800),
225
+ "learning_rate": self.config.get("learning_rate", 2e-4),
226
+ "fp16": self.config.get("fp16", not is_bfloat16_supported()),
227
+ "bf16": self.config.get("bf16", is_bfloat16_supported()),
228
+ "logging_steps": self.config.get("logging_steps", 15),
229
+ "optim": self.config.get("optim", "adamw_8bit"),
230
+ "weight_decay": self.config.get("weight_decay", 0.01),
231
+ "lr_scheduler_type": self.config.get("lr_scheduler_type", "linear"),
232
+ "seed": self.config.get("seed", 3407),
233
+ "output_dir": self.config.get("output_dir", "outputs"),
234
+ "report_to": "none" if not os.getenv("PRAISON_WANDB") else "wandb",
235
+ "remove_unused_columns": self.config.get("remove_unused_columns", False)
236
+ }
237
+ if os.getenv("PRAISON_WANDB"):
238
+ ta_params["save_steps"] = self.config.get("save_steps", 100)
239
+ ta_params["run_name"] = os.getenv("PRAISON_WANDB_RUN_NAME", "praisonai-train")
240
+
241
+ training_args = TrainingArguments(**ta_params)
238
242
  # Since the dataset is pre-tokenized, we supply a dummy dataset_text_field.
239
243
  trainer = SFTTrainer(
240
244
  model=self.model,
@@ -425,12 +429,16 @@ class TrainModel:
425
429
  "template": """{{- if .System }}{{ .System }}{{ end }}
426
430
  {{- range $i, $_ := .Messages }}
427
431
  {{- $last := eq (len (slice $.Messages $i)) 1}}
428
- {{- if eq .Role "user" }}<|User|>{{ .Content }}
429
- {{- else if eq .Role "assistant" }}<|Assistant|>{{ .Content }}{{- if not $last }}<|end▁of▁sentence|>{{- end }}
432
+ {{- if eq .Role "user" }}
433
+ {{ .Content }}
434
+ {{- else if eq .Role "assistant" }}
435
+ {{ .Content }}{{- if not $last }}
436
+ {{- end }}
430
437
  {{- end }}
431
- {{- if and $last (ne .Role "assistant") }}<|Assistant|>{{- end }}
438
+ {{- if and $last (ne .Role "assistant") }}
439
+ {{ end }}
432
440
  {{- end }}""",
433
- "stop_tokens": ["<|begin▁of▁sentence|>", "<|end▁of▁sentence|>", "<|User|>", "<|Assistant|>"]
441
+ "stop_tokens": ["", "", "", ""]
434
442
  },
435
443
  "llava": {
436
444
  "template": """{{- if .Suffix }}<|fim_prefix|>{{ .Prompt }}<|fim_suffix|>{{ .Suffix }}<|fim_middle|>
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.3
2
2
  Name: PraisonAI
3
- Version: 2.0.72
3
+ Version: 2.0.74
4
4
  Summary: PraisonAI is an AI Agents Framework with Self Reflection. PraisonAI application combines PraisonAI Agents, AutoGen, and CrewAI into a low-code solution for building and managing multi-agent LLM systems, focusing on simplicity, customisation, and efficient human-agent collaboration.
5
5
  Author: Mervin Praison
6
6
  Requires-Python: >=3.10,<3.13
@@ -5,7 +5,7 @@ praisonai/api/call.py,sha256=krOfTCZM_bdbsNuWQ1PijzCHECkDvEi9jIvvZaDQUUU,11035
5
5
  praisonai/auto.py,sha256=uLDm8CU3L_3amZsd55yzf9RdBF1uW-BGSx7nl9ctNZ4,8680
6
6
  praisonai/chainlit_ui.py,sha256=bNR7s509lp0I9JlJNvwCZRUZosC64qdvlFCt8NmFamQ,12216
7
7
  praisonai/cli.py,sha256=cu7Eit5i-UIcEkylDl0iJvrDBrW-ueobHmjwlx8dmQo,25442
8
- praisonai/deploy.py,sha256=d7nxIqHt2tKwhG9SJ2iJZeQ7CFmF97dEgnHKbTt8JfU,6028
8
+ praisonai/deploy.py,sha256=rO4_p8BQyNhMD1D4xJMOPdXm2IDQcXshuZRPgwsJUdg,6028
9
9
  praisonai/inbuilt_tools/__init__.py,sha256=fai4ZJIKz7-iOnGZv5jJX0wmT77PKa4x2jqyaJddKFA,569
10
10
  praisonai/inbuilt_tools/autogen_tools.py,sha256=kJdEv61BTYvdHOaURNEpBcWq8Rs-oC03loNFTIjT-ak,4687
11
11
  praisonai/inc/__init__.py,sha256=sPDlYBBwdk0VlWzaaM_lG0_LD07lS2HRGvPdxXJFiYg,62
@@ -33,7 +33,7 @@ praisonai/setup/setup_conda_env.py,sha256=4QiWrqgEObivzOMwfJgWaCPpUEpB68cQ6lFwVw
33
33
  praisonai/setup/setup_conda_env.sh,sha256=tU6CeQdOB-Tka21C4qYhaCtVNOzLf1A6jlYEf_DIXuo,4087
34
34
  praisonai/setup.py,sha256=0jHgKnIPCtBZiGYaYyTz3PzrJI6nBy55VXk2UctXlDo,373
35
35
  praisonai/test.py,sha256=OL-wesjA5JTohr8rtr6kWoaS4ImkJg2l0GXJ-dUUfRU,4090
36
- praisonai/train.py,sha256=ADuIMICCtnDhcGwmcZK-D_6m-Mjaps8JYRFwD-W0fw0,23598
36
+ praisonai/train.py,sha256=Cjb0TKU3esNrCk2OX24Qm1S1crRC00FdiGUYJLw3iPQ,24094
37
37
  praisonai/ui/README.md,sha256=QG9yucvBieVjCjWFzu6hL9xNtYllkoqyJ_q1b0YYAco,1124
38
38
  praisonai/ui/agents.py,sha256=1qsWE2yCaQKhuc-1uLHdMfZJeOXzBtp4pe5q7bk2EuA,32813
39
39
  praisonai/ui/callbacks.py,sha256=V4_-GjxmjDFmugUZGfQHKtNSysx7rT6i1UblbM_8lIM,1968
@@ -82,8 +82,8 @@ praisonai/ui/realtimeclient/tools.py,sha256=IJOYwVOBW5Ocn5_iV9pFkmSKR3WU3YpX3kwF
82
82
  praisonai/ui/sql_alchemy.py,sha256=oekZOXlRGMJ2SuC-lmgMMIzAmvbMg2DWeGTSpOzbVBM,29674
83
83
  praisonai/ui/tools.md,sha256=Ad3YH_ZCLMWlz3mDXllQnQ_S5l55LWqLdcZSh-EXrHI,3956
84
84
  praisonai/version.py,sha256=ugyuFliEqtAwQmH4sTlc16YXKYbFWDmfyk87fErB8-8,21
85
- praisonai-2.0.72.dist-info/LICENSE,sha256=kqvFysVlnFxYOu0HxCe2HlmZmJtdmNGOxWRRkT9TsWc,1035
86
- praisonai-2.0.72.dist-info/METADATA,sha256=aJ_lIcbYqQ_PWaPZCFMVC756_jzZrtFTjLbppLr0ktE,21942
87
- praisonai-2.0.72.dist-info/WHEEL,sha256=OiNztsphQWM3l0xJ9BHQRElMnxzHbt1M68r2N60f8T8,110
88
- praisonai-2.0.72.dist-info/entry_points.txt,sha256=I_xc6a6MNTTfLxYmAxe0rgey0G-_hbY07oFW-ZDnkw4,135
89
- praisonai-2.0.72.dist-info/RECORD,,
85
+ praisonai-2.0.74.dist-info/LICENSE,sha256=kqvFysVlnFxYOu0HxCe2HlmZmJtdmNGOxWRRkT9TsWc,1035
86
+ praisonai-2.0.74.dist-info/METADATA,sha256=256JGGj2RCJQAGjuKE5LlcbtnGl3JeghSi3DqTafsqE,21942
87
+ praisonai-2.0.74.dist-info/WHEEL,sha256=OiNztsphQWM3l0xJ9BHQRElMnxzHbt1M68r2N60f8T8,110
88
+ praisonai-2.0.74.dist-info/entry_points.txt,sha256=I_xc6a6MNTTfLxYmAxe0rgey0G-_hbY07oFW-ZDnkw4,135
89
+ praisonai-2.0.74.dist-info/RECORD,,