npcpy 1.3.15__py3-none-any.whl → 1.3.16__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.
- npcpy/ft/rl.py +27 -14
- npcpy/serve.py +3 -3
- {npcpy-1.3.15.dist-info → npcpy-1.3.16.dist-info}/METADATA +1 -1
- {npcpy-1.3.15.dist-info → npcpy-1.3.16.dist-info}/RECORD +7 -7
- {npcpy-1.3.15.dist-info → npcpy-1.3.16.dist-info}/WHEEL +0 -0
- {npcpy-1.3.15.dist-info → npcpy-1.3.16.dist-info}/licenses/LICENSE +0 -0
- {npcpy-1.3.15.dist-info → npcpy-1.3.16.dist-info}/top_level.txt +0 -0
npcpy/ft/rl.py
CHANGED
|
@@ -6,27 +6,40 @@ import glob
|
|
|
6
6
|
import json
|
|
7
7
|
import os
|
|
8
8
|
import pandas as pd
|
|
9
|
+
# Core imports that should always work
|
|
9
10
|
try:
|
|
10
|
-
from datasets import Dataset
|
|
11
|
-
|
|
12
|
-
from peft import LoraConfig, PeftModel
|
|
13
11
|
import torch
|
|
14
|
-
|
|
15
|
-
AutoModelForCausalLM,
|
|
16
|
-
AutoTokenizer,
|
|
17
|
-
BitsAndBytesConfig
|
|
18
|
-
)
|
|
19
|
-
from trl import DPOTrainer, DPOConfig
|
|
20
|
-
except:
|
|
21
|
-
Dataset = None
|
|
22
|
-
PeftModel = None
|
|
23
|
-
DPOConfig = None
|
|
24
|
-
DPOTrainer = None
|
|
12
|
+
except ImportError:
|
|
25
13
|
torch = None
|
|
14
|
+
|
|
15
|
+
try:
|
|
16
|
+
from transformers import AutoModelForCausalLM, AutoTokenizer
|
|
17
|
+
except ImportError:
|
|
26
18
|
AutoModelForCausalLM = None
|
|
27
19
|
AutoTokenizer = None
|
|
20
|
+
|
|
21
|
+
try:
|
|
22
|
+
from transformers import BitsAndBytesConfig
|
|
23
|
+
except ImportError:
|
|
28
24
|
BitsAndBytesConfig = None
|
|
29
25
|
|
|
26
|
+
try:
|
|
27
|
+
from datasets import Dataset
|
|
28
|
+
except ImportError:
|
|
29
|
+
Dataset = None
|
|
30
|
+
|
|
31
|
+
try:
|
|
32
|
+
from peft import LoraConfig, PeftModel
|
|
33
|
+
except ImportError:
|
|
34
|
+
LoraConfig = None
|
|
35
|
+
PeftModel = None
|
|
36
|
+
|
|
37
|
+
try:
|
|
38
|
+
from trl import DPOTrainer, DPOConfig
|
|
39
|
+
except ImportError:
|
|
40
|
+
DPOTrainer = None
|
|
41
|
+
DPOConfig = None
|
|
42
|
+
|
|
30
43
|
|
|
31
44
|
import random
|
|
32
45
|
from typing import List, Dict, Any, Optional, Callable
|
npcpy/serve.py
CHANGED
|
@@ -5273,7 +5273,7 @@ def openai_chat_completions():
|
|
|
5273
5273
|
current_path = request.headers.get("X-Current-Path", os.getcwd())
|
|
5274
5274
|
|
|
5275
5275
|
# Load team and NPC
|
|
5276
|
-
db_path = app.config.get('DB_PATH') or os.path.expanduser("
|
|
5276
|
+
db_path = app.config.get('DB_PATH') or os.path.expanduser("~/npcsh_history.db")
|
|
5277
5277
|
db_conn = create_engine(f'sqlite:///{db_path}')
|
|
5278
5278
|
|
|
5279
5279
|
npc = None
|
|
@@ -6110,8 +6110,8 @@ if __name__ == "__main__":
|
|
|
6110
6110
|
|
|
6111
6111
|
SETTINGS_FILE = Path(os.path.expanduser("~/.npcshrc"))
|
|
6112
6112
|
|
|
6113
|
-
# Use
|
|
6114
|
-
db_path = os.path.expanduser("
|
|
6113
|
+
# Use environment variable for DB path, or fall back to home directory path (matching Electron app)
|
|
6114
|
+
db_path = os.environ.get('INCOGNIDE_DB_PATH', os.path.expanduser("~/npcsh_history.db"))
|
|
6115
6115
|
user_npc_directory = os.path.expanduser("~/.npcsh/npc_team")
|
|
6116
6116
|
|
|
6117
6117
|
# Ensure directories exist
|
|
@@ -7,7 +7,7 @@ npcpy/npc_array.py,sha256=fVTxcMiXV-lvltmuwaRnTU9D3ikPq3-7k5wzp7MA5OY,40224
|
|
|
7
7
|
npcpy/npc_compiler.py,sha256=W1umvhsbyCYoRYajPUKa642FcsX5Fcadh78n-Vzu2hM,120983
|
|
8
8
|
npcpy/npc_sysenv.py,sha256=VH7le3xwxHvO55ZYCG1e-gj8X5YTSIqbIiU6ifSqhss,38917
|
|
9
9
|
npcpy/npcs.py,sha256=eExuVsbTfrRobTRRptRpDm46jCLWUgbvy4_U7IUQo-c,744
|
|
10
|
-
npcpy/serve.py,sha256=
|
|
10
|
+
npcpy/serve.py,sha256=Liww7GPRLRM_IfTt3oqsZJVwa_qVayXFSqUbnHGVPcw,244577
|
|
11
11
|
npcpy/tools.py,sha256=A5_oVmZkzGnI3BI-NmneuxeXQq-r29PbpAZP4nV4jrc,5303
|
|
12
12
|
npcpy/data/__init__.py,sha256=1tcoChR-Hjn905JDLqaW9ElRmcISCTJdE7BGXPlym2Q,642
|
|
13
13
|
npcpy/data/audio.py,sha256=o4auV8DQrAmZ4y84U3SofiwEuq5-ZBjGEZipQ9zPpGQ,22816
|
|
@@ -22,7 +22,7 @@ npcpy/ft/diff.py,sha256=0ScRR4AxXtVX2bgZ-Jr_dSwv3LAlU1JXDUq4F4n1Ea4,12839
|
|
|
22
22
|
npcpy/ft/ge.py,sha256=0VzIiXq2wCzGcK1x0Wd-myJ3xRf-FNaPg0GkHEZegUM,3552
|
|
23
23
|
npcpy/ft/memory_trainer.py,sha256=QZPznxEEwXbOGroHdMUMa5xpqlNwgV6nqOazI2xgrnQ,6635
|
|
24
24
|
npcpy/ft/model_ensembler.py,sha256=BRX4hJ_rvF1vKTzjMhlahZqPttUgc3PqmzUJDqIfIps,10038
|
|
25
|
-
npcpy/ft/rl.py,sha256=
|
|
25
|
+
npcpy/ft/rl.py,sha256=JYmOCKJcralU7uEMgrTz-saBunrPY5eBSx8gDCoa-M0,12431
|
|
26
26
|
npcpy/ft/sft.py,sha256=74gRaJTTrZcO4np4DqRMr79ADkGhPcDKutR74rag03E,6659
|
|
27
27
|
npcpy/ft/usft.py,sha256=O025GGYGZQf2ZVLowyAmBwh5bJyuy2dUAM6v03YcboY,3435
|
|
28
28
|
npcpy/gen/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
@@ -53,8 +53,8 @@ npcpy/work/browser.py,sha256=p2PeaoZdAXipFuAgKCCB3aXXLE_p3yIRqC87KlZKZWc,679
|
|
|
53
53
|
npcpy/work/desktop.py,sha256=F3I8mUtJp6LAkXodsh8hGZIncoads6c_2Utty-0EdDA,2986
|
|
54
54
|
npcpy/work/plan.py,sha256=QyUwg8vElWiHuoS-xK4jXTxxHvkMD3VkaCEsCmrEPQk,8300
|
|
55
55
|
npcpy/work/trigger.py,sha256=P1Y8u1wQRsS2WACims_2IdkBEar-iBQix-2TDWoW0OM,9948
|
|
56
|
-
npcpy-1.3.
|
|
57
|
-
npcpy-1.3.
|
|
58
|
-
npcpy-1.3.
|
|
59
|
-
npcpy-1.3.
|
|
60
|
-
npcpy-1.3.
|
|
56
|
+
npcpy-1.3.16.dist-info/licenses/LICENSE,sha256=j0YPvce7Ng9e32zYOu0EmXjXeJ0Nwawd0RA3uSGGH4E,1070
|
|
57
|
+
npcpy-1.3.16.dist-info/METADATA,sha256=WVFDIWoXuI3XfvPRDAX2vuALQnX-0wi62PEZIonwKs0,37870
|
|
58
|
+
npcpy-1.3.16.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
59
|
+
npcpy-1.3.16.dist-info/top_level.txt,sha256=g1pbSvrOOncB74Bg5-J0Olg4V0A5VzDw-Xz5YObq8BU,6
|
|
60
|
+
npcpy-1.3.16.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|