janus-llm 1.0.0__py3-none-any.whl → 2.0.1__py3-none-any.whl

Sign up to get free protection for your applications and to get access to all the features.
Files changed (74) hide show
  1. janus/__init__.py +9 -1
  2. janus/__main__.py +4 -0
  3. janus/_tests/test_cli.py +128 -0
  4. janus/_tests/test_translate.py +49 -7
  5. janus/cli.py +530 -46
  6. janus/converter.py +50 -19
  7. janus/embedding/_tests/test_collections.py +2 -8
  8. janus/embedding/_tests/test_database.py +32 -0
  9. janus/embedding/_tests/test_vectorize.py +9 -4
  10. janus/embedding/collections.py +49 -6
  11. janus/embedding/embedding_models_info.py +130 -0
  12. janus/embedding/vectorize.py +53 -62
  13. janus/language/_tests/__init__.py +0 -0
  14. janus/language/_tests/test_combine.py +62 -0
  15. janus/language/_tests/test_splitter.py +16 -0
  16. janus/language/binary/_tests/test_binary.py +16 -1
  17. janus/language/binary/binary.py +10 -3
  18. janus/language/block.py +31 -30
  19. janus/language/combine.py +26 -34
  20. janus/language/mumps/_tests/test_mumps.py +2 -2
  21. janus/language/mumps/mumps.py +93 -9
  22. janus/language/naive/__init__.py +4 -0
  23. janus/language/naive/basic_splitter.py +14 -0
  24. janus/language/naive/chunk_splitter.py +26 -0
  25. janus/language/naive/registry.py +13 -0
  26. janus/language/naive/simple_ast.py +18 -0
  27. janus/language/naive/tag_splitter.py +61 -0
  28. janus/language/splitter.py +168 -74
  29. janus/language/treesitter/_tests/test_treesitter.py +19 -14
  30. janus/language/treesitter/treesitter.py +37 -13
  31. janus/llm/model_callbacks.py +177 -0
  32. janus/llm/models_info.py +165 -72
  33. janus/metrics/__init__.py +8 -0
  34. janus/metrics/_tests/__init__.py +0 -0
  35. janus/metrics/_tests/reference.py +2 -0
  36. janus/metrics/_tests/target.py +2 -0
  37. janus/metrics/_tests/test_bleu.py +56 -0
  38. janus/metrics/_tests/test_chrf.py +67 -0
  39. janus/metrics/_tests/test_file_pairing.py +59 -0
  40. janus/metrics/_tests/test_llm.py +91 -0
  41. janus/metrics/_tests/test_reading.py +28 -0
  42. janus/metrics/_tests/test_rouge_score.py +65 -0
  43. janus/metrics/_tests/test_similarity_score.py +23 -0
  44. janus/metrics/_tests/test_treesitter_metrics.py +110 -0
  45. janus/metrics/bleu.py +66 -0
  46. janus/metrics/chrf.py +55 -0
  47. janus/metrics/cli.py +7 -0
  48. janus/metrics/complexity_metrics.py +208 -0
  49. janus/metrics/file_pairing.py +113 -0
  50. janus/metrics/llm_metrics.py +202 -0
  51. janus/metrics/metric.py +466 -0
  52. janus/metrics/reading.py +70 -0
  53. janus/metrics/rouge_score.py +96 -0
  54. janus/metrics/similarity.py +53 -0
  55. janus/metrics/splitting.py +38 -0
  56. janus/parsers/_tests/__init__.py +0 -0
  57. janus/parsers/_tests/test_code_parser.py +32 -0
  58. janus/parsers/code_parser.py +24 -253
  59. janus/parsers/doc_parser.py +169 -0
  60. janus/parsers/eval_parser.py +80 -0
  61. janus/parsers/reqs_parser.py +72 -0
  62. janus/prompts/prompt.py +103 -30
  63. janus/translate.py +636 -111
  64. janus/utils/_tests/__init__.py +0 -0
  65. janus/utils/_tests/test_logger.py +67 -0
  66. janus/utils/_tests/test_progress.py +20 -0
  67. janus/utils/enums.py +56 -3
  68. janus/utils/progress.py +56 -0
  69. {janus_llm-1.0.0.dist-info → janus_llm-2.0.1.dist-info}/METADATA +27 -11
  70. janus_llm-2.0.1.dist-info/RECORD +94 -0
  71. {janus_llm-1.0.0.dist-info → janus_llm-2.0.1.dist-info}/WHEEL +1 -1
  72. janus_llm-1.0.0.dist-info/RECORD +0 -48
  73. {janus_llm-1.0.0.dist-info → janus_llm-2.0.1.dist-info}/LICENSE +0 -0
  74. {janus_llm-1.0.0.dist-info → janus_llm-2.0.1.dist-info}/entry_points.txt +0 -0
File without changes
@@ -0,0 +1,67 @@
1
+ import logging
2
+ import os
3
+ import unittest
4
+ from unittest.mock import patch
5
+
6
+ from ..logger import LogFilter, create_logger
7
+
8
+
9
+ class TestLogger(unittest.TestCase):
10
+ def setUp(self):
11
+ self.log_filter = LogFilter()
12
+ self.record = logging.LogRecord(
13
+ name="test", level=20, pathname="", lineno=0, msg="", args=(), exc_info=None
14
+ )
15
+
16
+ def test_log_filter(self):
17
+ self.record.msg = "dealloc"
18
+ self.assertFalse(self.log_filter.filter(self.record))
19
+
20
+ self.record.msg = "That model is currently overloaded"
21
+ self.assertFalse(self.log_filter.filter(self.record))
22
+
23
+ self.record.msg = "Batches: "
24
+ self.assertFalse(self.log_filter.filter(self.record))
25
+
26
+ self.record.msg = "Using default tokenizer."
27
+ self.assertFalse(self.log_filter.filter(self.record))
28
+
29
+ self.record.msg = "Load pretrained SentenceTransformer"
30
+ self.assertFalse(self.log_filter.filter(self.record))
31
+
32
+ self.record.msg = "Use pytorch device"
33
+ self.assertFalse(self.log_filter.filter(self.record))
34
+
35
+ self.record.msg = "creating"
36
+ self.assertFalse(self.log_filter.filter(self.record))
37
+
38
+ self.record.msg = "cc -f"
39
+ self.assertFalse(self.log_filter.filter(self.record))
40
+
41
+ self.record.msg = "c++"
42
+ self.assertFalse(self.log_filter.filter(self.record))
43
+
44
+ self.record.msg = "error_code=context_length_exceeded"
45
+ self.assertFalse(self.log_filter.filter(self.record))
46
+
47
+ self.record.msg = "NumExpr"
48
+ self.assertFalse(self.log_filter.filter(self.record))
49
+
50
+ self.record.msg = "cc -shared"
51
+ self.assertFalse(self.log_filter.filter(self.record))
52
+
53
+ self.record.msg = "This is a test message"
54
+ self.assertTrue(self.log_filter.filter(self.record))
55
+
56
+ def test_create_logger(self):
57
+ with patch.dict(os.environ, {"LOGLEVEL": "DEBUG"}):
58
+ logger = create_logger("test")
59
+ self.assertEqual(logger.level, logging.DEBUG)
60
+
61
+ with patch.dict(os.environ, {}, clear=True):
62
+ logger = create_logger("test")
63
+ self.assertEqual(logger.level, logging.INFO)
64
+
65
+
66
+ if __name__ == "__main__":
67
+ unittest.main()
@@ -0,0 +1,20 @@
1
+ import unittest
2
+
3
+ from ..progress import track
4
+
5
+
6
+ class TestProgress(unittest.TestCase):
7
+ def test_track(self):
8
+ iterable = range(5)
9
+ description = "Processing:"
10
+ total = 5
11
+
12
+ # Convert the generator to a list to consume all items
13
+ result = list(track(iterable, description, total))
14
+
15
+ # Check if the result is the same as the input iterable
16
+ self.assertEqual(result, list(iterable))
17
+
18
+
19
+ if __name__ == "__main__":
20
+ unittest.main()
janus/utils/enums.py CHANGED
@@ -1,5 +1,5 @@
1
1
  from enum import Enum
2
- from typing import Dict, Set
2
+ from typing import Any, Dict, Set
3
3
 
4
4
 
5
5
  class EmbeddingType(Enum):
@@ -12,7 +12,7 @@ class EmbeddingType(Enum):
12
12
 
13
13
  CUSTOM_SPLITTERS: Set[str] = {"mumps", "binary"}
14
14
 
15
- LANGUAGES: Dict[str, Dict[str, str]] = {
15
+ LANGUAGES: Dict[str, Dict[str, Any]] = {
16
16
  "ada": {
17
17
  "comment": "--",
18
18
  "suffix": "adb",
@@ -63,6 +63,8 @@ LANGUAGES: Dict[str, Dict[str, str]] = {
63
63
  '#include <stdio.h>\n\nint main() {\n printf("Hello, World!\\n");\n'
64
64
  " return 0;\n}\n"
65
65
  ),
66
+ "functional_node_type": "function_definition",
67
+ "comment_node_type": "comment",
66
68
  },
67
69
  "capnp": {
68
70
  "comment": "#",
@@ -204,6 +206,8 @@ LANGUAGES: Dict[str, Dict[str, str]] = {
204
206
  "example": (
205
207
  "program HelloWorld\n print *, 'Hello, World!'\nend program HelloWorld\n"
206
208
  ),
209
+ "functional_node_type": "function",
210
+ "comment_node_type": "comment",
207
211
  },
208
212
  "gitattributes": {
209
213
  "comment": "#",
@@ -271,6 +275,35 @@ LANGUAGES: Dict[str, Dict[str, str]] = {
271
275
  ", World!</h1>\n</body>\n</html>\n"
272
276
  ),
273
277
  },
278
+ "ibmhlasm": {
279
+ "comment": "*",
280
+ "suffix": "asm",
281
+ "url": "https://github.com/janus-llm/tree-sitter-ibmhlasm.git",
282
+ "branch": "metrics",
283
+ "example": (
284
+ """
285
+ TITLE 'Hello, World! Program'
286
+ HELLO CSECT
287
+ STM 14,12,12(13)
288
+ LR 12,15
289
+ USING *,12
290
+ LA 15,SAVEAREA
291
+ ST 13,4(,15)
292
+ ST 15,8(13)
293
+ LR 13,15
294
+ WTO 'Hello, World!'
295
+ L 13,4(,13)
296
+ LM 14,12,12(13)
297
+ LA 15,0
298
+ BR 14
299
+ SAVEAREA DS 18F
300
+ END HELLO
301
+ """
302
+ ),
303
+ "branch_node_types": ["branch_instruction"],
304
+ "operation_node_types": ["operation", "branch_operation"],
305
+ "operand_node_types": ["operands"],
306
+ },
274
307
  "java": {
275
308
  "comment": "//",
276
309
  "suffix": "java",
@@ -385,8 +418,18 @@ LANGUAGES: Dict[str, Dict[str, str]] = {
385
418
  "mumps": {
386
419
  "comment": ";",
387
420
  "suffix": "m",
388
- "url": None,
421
+ "url": "https://github.com/janus-llm/tree-sitter-mumps",
389
422
  "example": 'WRITE "Hello, World!"',
423
+ "functional_node_type": "routine_definition",
424
+ "comment_node_type": "comment",
425
+ "branch_node_types": ["if_statement"],
426
+ "operation_node_types": [
427
+ "command",
428
+ "function_call",
429
+ "routine_call",
430
+ "routine_definition",
431
+ ],
432
+ "operand_node_types": ["argument"],
390
433
  },
391
434
  "nix": {
392
435
  "comment": "#",
@@ -469,6 +512,8 @@ LANGUAGES: Dict[str, Dict[str, str]] = {
469
512
  "suffix": "py",
470
513
  "url": "https://github.com/tree-sitter/tree-sitter-python",
471
514
  "example": "# Hello, World!\nprint('Hello, World!')\n",
515
+ "functional_node_type": "function_definition",
516
+ "comment_node_type": "comment",
472
517
  },
473
518
  "qmljs": {
474
519
  "comment": "//",
@@ -684,6 +729,14 @@ LANGUAGES: Dict[str, Dict[str, str]] = {
684
729
  "url": "https://github.com/tree-sitter/tree-sitter-typescript",
685
730
  "example": "console.log('Hello, World!');\n",
686
731
  },
732
+ "uml": {
733
+ "comment": "'",
734
+ "suffix": "uml",
735
+ "url": "https://github.com/lyndsysimon/tree-sitter-plantuml",
736
+ "example": "@startuml\nAlice -> Bob: Authentication Request\nBob --> Alice:\
737
+ Authentication Response\nAlice -> Bob: Another authentication\
738
+ Request\nAlice <-- Bob: Another authentication Response\n@enduml",
739
+ },
687
740
  "verilog": {
688
741
  "comment": "//",
689
742
  "suffix": "v",
@@ -0,0 +1,56 @@
1
+ from typing import Iterable
2
+
3
+ from rich.progress import (
4
+ BarColumn,
5
+ MofNCompleteColumn,
6
+ Progress,
7
+ SpinnerColumn,
8
+ TextColumn,
9
+ TimeElapsedColumn,
10
+ TimeRemainingColumn,
11
+ )
12
+
13
+ from .logger import create_logger
14
+
15
+ log = create_logger(__name__)
16
+
17
+
18
+ def track(
19
+ iterable: Iterable, description: None | str = None, total: None | int = None
20
+ ) -> Iterable:
21
+ """Track progress of an iterable.
22
+
23
+ Arguments:
24
+ iterable: The iterable to track.
25
+ description: The description to show for the progress bar.
26
+ total: The total number of items in the iterable.
27
+ """
28
+ if total is None:
29
+ try:
30
+ total = len(iterable)
31
+ except TypeError:
32
+ log.debug("Could not determine total number of items in iterable.")
33
+ total = None
34
+
35
+ with Progress(
36
+ SpinnerColumn(),
37
+ TextColumn("[bold blue]{task.description}", justify="right"),
38
+ BarColumn(),
39
+ MofNCompleteColumn(),
40
+ "[progress.percentage]{task.percentage:>3.0f}%",
41
+ "[yellow]Time Elapsed:",
42
+ TimeElapsedColumn(),
43
+ "[cyan]Time Remaining:",
44
+ TimeRemainingColumn(),
45
+ ) as progress:
46
+ task = progress.add_task(description, total=total)
47
+ for item in iterable:
48
+ progress.update(task, advance=1)
49
+ yield item
50
+
51
+
52
+ if __name__ == "__main__":
53
+ from time import sleep
54
+
55
+ for i in track(range(100), description="Processing:"):
56
+ sleep(0.5)
@@ -1,30 +1,41 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: janus-llm
3
- Version: 1.0.0
3
+ Version: 2.0.1
4
4
  Summary: A transcoding library using LLMs.
5
5
  Home-page: https://github.com/janus-llm/janus-llm
6
6
  License: Apache 2.0
7
7
  Author: Michael Doyle
8
8
  Author-email: mdoyle@mitre.org
9
- Requires-Python: >=3.10,<4.0
9
+ Requires-Python: >=3.11,<3.12
10
10
  Classifier: License :: Other/Proprietary License
11
11
  Classifier: Programming Language :: Python :: 3
12
- Classifier: Programming Language :: Python :: 3.10
13
12
  Classifier: Programming Language :: Python :: 3.11
14
- Classifier: Programming Language :: Python :: 3.12
15
- Requires-Dist: chromadb (>=0.4.14,<0.5.0)
13
+ Provides-Extra: all
14
+ Provides-Extra: bedrock
15
+ Provides-Extra: hf-local
16
+ Requires-Dist: aenum (>=3.1.15,<4.0.0)
17
+ Requires-Dist: boto3 (>=1.34.142,<2.0.0) ; extra == "bedrock" or extra == "all"
18
+ Requires-Dist: chromadb (>=0.5.0,<0.6.0)
16
19
  Requires-Dist: gitpython (>=3.1.32,<4.0.0)
17
20
  Requires-Dist: gpt4all (>=2.0.2,<3.0.0)
18
- Requires-Dist: langchain (>=0.0.306,<0.0.307)
19
- Requires-Dist: langchain-community (>=0.0.16,<0.0.17)
21
+ Requires-Dist: langchain (>=0.2.0,<0.3.0)
22
+ Requires-Dist: langchain-anthropic (>=0.1.15,<0.2.0)
23
+ Requires-Dist: langchain-community (>=0.2.0,<0.3.0)
24
+ Requires-Dist: langchain-core (>=0.2.0,<0.3.0)
25
+ Requires-Dist: langchain-openai (>=0.1.8,<0.2.0)
26
+ Requires-Dist: nltk (>=3.8.1,<4.0.0)
20
27
  Requires-Dist: numpy (>=1.24.3,<2.0.0)
21
- Requires-Dist: openai (>=0.27.6,<0.28.0)
28
+ Requires-Dist: openai (>=1.14.0,<2.0.0)
29
+ Requires-Dist: py-readability-metrics (>=1.4.5,<2.0.0)
30
+ Requires-Dist: py-rouge (>=1.1,<2.0)
22
31
  Requires-Dist: python-dotenv (>=1.0.0,<2.0.0)
23
- Requires-Dist: rich (>=13.3.5,<14.0.0)
32
+ Requires-Dist: rich (>=13.7.1,<14.0.0)
33
+ Requires-Dist: sacrebleu (>=2.4.1,<3.0.0)
34
+ Requires-Dist: sentence-transformers (>=2.6.1,<3.0.0) ; extra == "hf-local" or extra == "all"
24
35
  Requires-Dist: text-generation (>=0.6.0,<0.7.0)
25
- Requires-Dist: tiktoken (>=0.4.0,<0.5.0)
36
+ Requires-Dist: tiktoken (>=0.7.0,<0.8.0)
26
37
  Requires-Dist: transformers (>=4.31.0,<5.0.0)
27
- Requires-Dist: tree-sitter (>=0.20.1,<0.21.0)
38
+ Requires-Dist: tree-sitter (>=0.21.0,<0.22.0)
28
39
  Requires-Dist: typer (>=0.9.0,<0.10.0)
29
40
  Project-URL: Documentation, https://janus-llm.github.io/janus-llm
30
41
  Project-URL: Repository, https://github.com/janus-llm/janus-llm
@@ -43,8 +54,10 @@ Description-Content-Type: text/markdown
43
54
  </a>
44
55
  <a href="https://github.com/psf/black" target="_blank">
45
56
  <img src="https://img.shields.io/badge/code%20style-black-000000.svg" alt="Code Style: black">
57
+ </a>
46
58
  <a href="https://pypi.org/project/janus-llm" target="_blank">
47
59
  <img src="https://img.shields.io/pypi/pyversions/janus-llm" alt="Python versions">
60
+ </a>
48
61
  <a href="https://pypi.org/project/janus-llm" target="_blank">
49
62
  <img src="https://img.shields.io/pypi/v/janus-llm?color=%2334D058&label=pypi%20package" alt="Package version">
50
63
  </a>
@@ -94,3 +107,6 @@ poetry install
94
107
 
95
108
  See our [contributing pages](https://janus-llm.github.io/janus-llm/contributing.html)
96
109
 
110
+ ### Copyright
111
+ Copyright ©2024 The MITRE Corporation. ALL RIGHTS RESERVED. Approved for Public Release; Distribution Unlimited. Public Release Case Number 23-4084.
112
+
@@ -0,0 +1,94 @@
1
+ janus/__init__.py,sha256=CLhLBI_jy4pPKw-ZfpgACv8QHFZMnZml-GjPpBcSYMg,341
2
+ janus/__main__.py,sha256=Qd-f8z2Q2vpiEP2x6PBFsJrpACWDVxFKQk820MhFmHo,59
3
+ janus/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
4
+ janus/_tests/conftest.py,sha256=V7uW-oq3YbFiRPvrq15YoVVrA1n_83pjgiyTZ-IUGW8,963
5
+ janus/_tests/test_cli.py,sha256=oP-WOM-ai4jZLDGqjLzI6kCtfXWpoeUR8TynP5p6cVg,4254
6
+ janus/_tests/test_translate.py,sha256=71oRTTfdSVFOBvUhuOavgl3TuimTz1K6eG-04pUGpfE,16439
7
+ janus/cli.py,sha256=X_7HXQGeQEYUkIF3AHbbc04lUEUjKegZ7tUFwmKjf10,29549
8
+ janus/converter.py,sha256=ge7nJA1DlOrHW_uB9P0dguc48Au8g7bqCERNqMIqfxs,5941
9
+ janus/embedding/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
10
+ janus/embedding/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
11
+ janus/embedding/_tests/test_collections.py,sha256=llg-JSuRRFhKkHFiWWSHEWV3iaT6Lwue0lp2tEml9io,2668
12
+ janus/embedding/_tests/test_database.py,sha256=uqI2Jgj8DEIlciqiwiZx_n0osjcspIPrHOSSN1NRZSk,1019
13
+ janus/embedding/_tests/test_vectorize.py,sha256=NnJLHBwgMVycAProRJxuLVSByxrpJ35eaZCFca52gNY,1964
14
+ janus/embedding/collections.py,sha256=ZE8QGYQ82DCLqhV0m1y7PiqpuHjEfxHPcS5SCKU0LAw,5411
15
+ janus/embedding/database.py,sha256=tabz3n1rilTQU1x2RXY0xZcqlKQ63THZ4oSNTz-9e_I,3296
16
+ janus/embedding/embedding_models_info.py,sha256=Ouj_VIowuX_mb99ni7vbmXkCkGTmO7XAbw2AHIaicVc,5074
17
+ janus/embedding/vectorize.py,sha256=ap3e6ZMai8U3M5vdpLc_st4Sw31xyqoaqEno0IJlVOU,6410
18
+ janus/language/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
19
+ janus/language/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
20
+ janus/language/_tests/test_combine.py,sha256=ydCYNbTxvaxT-5axiEBzPQLn6s4arSyZ5Tx2SYKLpJY,1830
21
+ janus/language/_tests/test_splitter.py,sha256=Hqexa39LLEXlK3ZUw7Zot4PUIACvye2vkq0Jaox0T10,373
22
+ janus/language/binary/__init__.py,sha256=AlNAe12ZA366kcGSrQ1FJyOdbwxFqGBFkYR2K6yL818,51
23
+ janus/language/binary/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
24
+ janus/language/binary/_tests/test_binary.py,sha256=a-8RSfKA23UrJC9c1xPQK792XZCz8npCHI7isN2dAP8,1727
25
+ janus/language/binary/binary.py,sha256=CS1RAieN8klSsCeXQEFYKUWioatUX-sOPXKQr5S6NzE,6534
26
+ janus/language/binary/reveng/decompile_script.py,sha256=veW51oJzuO-4UD3Er062jXZ_FYtTFo9OCkl82Z2xr6A,2182
27
+ janus/language/block.py,sha256=4f8e3YYSS2p-0fXjjl2erbbXDOHcBxiLzDHALKlPTg4,9188
28
+ janus/language/combine.py,sha256=hSEc1dHLcOELks-ZGsRKHOgYBXAronKus6BTmb1u42k,2940
29
+ janus/language/file.py,sha256=X2MYcAMlCABK77uhMdI_J2foXLrqEdinapYRfLPyKB8,563
30
+ janus/language/mumps/__init__.py,sha256=-Ou_wJ-JgHezfp1dub2_qCYNiK9wO-zo2MlqxM9qiwE,48
31
+ janus/language/mumps/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
32
+ janus/language/mumps/_tests/test_mumps.py,sha256=6l7q14lPnKf231iWwMdRbf-dg9QuHa26YMS7-K7yC4A,1001
33
+ janus/language/mumps/mumps.py,sha256=J8ewuLDh7y9GeyCcGNYqCGJ9HOwrEWypc2HNxClZ8is,7382
34
+ janus/language/mumps/patterns.py,sha256=FW5T6Nt5kBO2UKgSL1KLVDbYRgMaJAzDvEmvBkxHppA,2310
35
+ janus/language/naive/__init__.py,sha256=6P5rDAZtoHTObkFbZkiEdd-PVRA_9VTQogUjwvRMKK8,198
36
+ janus/language/naive/basic_splitter.py,sha256=RM9pJK2YkHfb6_EFEV-dh_rLqkjS6v0cn3ASPf8A6Fg,459
37
+ janus/language/naive/chunk_splitter.py,sha256=ebRSbaJhDW-Hyr5__ukbdmAl6kQ1WWFqrq_SfCgHo6k,772
38
+ janus/language/naive/registry.py,sha256=8YQX1q0IdAm7t69-oC_00I-vfkdRnHuX-OD3KEjEIuU,294
39
+ janus/language/naive/simple_ast.py,sha256=gix_fh864sHZ5KeXoOZIVdKdQeCN_4Qwq4Ox-haZ6sY,593
40
+ janus/language/naive/tag_splitter.py,sha256=IXWMn9tBVUGAtzvQi89GhoZ6g7fPXk5MzO0kMCr2mb0,2045
41
+ janus/language/node.py,sha256=-ymv--oILEYLVO2KSOrzOlzL2cZHNQpQJYwE1cKA-pY,200
42
+ janus/language/splitter.py,sha256=Ep8RxWrnuih3MAcdkkbtAsSLrPmyQcjnk0IzbRC-460,16741
43
+ janus/language/treesitter/__init__.py,sha256=mUliw7ZJLZ8NkJKyUQMSoUV82hYXE0HvLHrEdGPJF4Q,43
44
+ janus/language/treesitter/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
45
+ janus/language/treesitter/_tests/test_treesitter.py,sha256=nsavUV0aI6cpT9FkQve58eTTehLyQG6qJJBGlNa_bIw,2170
46
+ janus/language/treesitter/treesitter.py,sha256=9hbP7eBuSEKSZm6OD4C9q2tbjzrEidaCAKw74aO4lEM,6855
47
+ janus/llm/__init__.py,sha256=8Pzn3Jdx867PzDc4xmwm8wvJDGzWSIhpN0NCEYFe0LQ,36
48
+ janus/llm/model_callbacks.py,sha256=zMCbMgniKrzKf-sU9SxOcfoOvc3xz7y0VxIxfdlS5tA,6766
49
+ janus/llm/models_info.py,sha256=jNTp7mg7MVSS-Anp9Z-wMTz8odiE-1xXeyi8ngpJi1E,7151
50
+ janus/metrics/__init__.py,sha256=AsxtZJUzZiXJPr2ehPPltuYP-ddechjg6X85WZUO7mA,241
51
+ janus/metrics/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
52
+ janus/metrics/_tests/reference.py,sha256=hiaJPP9CXkvFBV_wL-gOe_BzELTw0nvB6uCxhxtIiE8,13
53
+ janus/metrics/_tests/target.py,sha256=hiaJPP9CXkvFBV_wL-gOe_BzELTw0nvB6uCxhxtIiE8,13
54
+ janus/metrics/_tests/test_bleu.py,sha256=TcSnNGpMh00Nkkk1zq5wDfdCANMUq9eXscU_hcBRU8A,1640
55
+ janus/metrics/_tests/test_chrf.py,sha256=O4v1Cj513H8NYffJILpSI7CuR_dnm7F8CeB3C7sZYr0,2202
56
+ janus/metrics/_tests/test_file_pairing.py,sha256=A4Qy6JIesFXUcaig45Ze6LiViuHQS7MFSQzDHQP3j9w,1880
57
+ janus/metrics/_tests/test_llm.py,sha256=IYsLwX5zC2WcaaPeSlHuQVmU2sB55-dsOXnmQPhcKps,3007
58
+ janus/metrics/_tests/test_reading.py,sha256=NDLFyjmOpM5gWf1LLTjGIw3aUR8Qf22zTt9hwe7NABs,840
59
+ janus/metrics/_tests/test_rouge_score.py,sha256=dnP99nry-U5wyE-CiC0eQwm78IyScnmGQH3BeIEdmLY,2032
60
+ janus/metrics/_tests/test_similarity_score.py,sha256=tdzH_8hYb2h7fKxpd_a75di-GPnU_frZ0zn2aeYzkso,811
61
+ janus/metrics/_tests/test_treesitter_metrics.py,sha256=tqpAg9LY811gfQ3n2ypRqBJesAFQodMf6Gz7dvOsqp4,4337
62
+ janus/metrics/bleu.py,sha256=eRoHIQulPp5mezJzHCNkwUB_89tAj4PqV2pF9eV9HfI,1746
63
+ janus/metrics/chrf.py,sha256=zNGWZ40CPMgj8rctnmwkbf25_PvSOLPbOjv-iN2cGXM,1472
64
+ janus/metrics/cli.py,sha256=Duuw2RF47Z-t1pal0cg3L_-N_91rx29krirqtIwjYLY,157
65
+ janus/metrics/complexity_metrics.py,sha256=kJh_TyZttMP716MXGfl-WbaS4beR_DaQWGYVg6MurSU,6573
66
+ janus/metrics/file_pairing.py,sha256=WNHRV1D8GOJMq8Pla5SPkTDAT7yVaS4-UU0XIGKvEVs,3729
67
+ janus/metrics/llm_metrics.py,sha256=3677S6GYcoVcokpmAN-fwvNu-lYWAKd7M5mebiE6RZc,5687
68
+ janus/metrics/metric.py,sha256=QRzLCkHY2g4pWDIiVLNaxNiEMF4gXw_eUrjecH5CdwA,16987
69
+ janus/metrics/reading.py,sha256=KYuWjKnk0ALRU5S7mCNNZtaNgK02l0fdIGsaNvxLMO4,1690
70
+ janus/metrics/rouge_score.py,sha256=HfUJwUWI-yq5pOjML2ee4QTOMl0NQahnqEY2Mt8Dtnw,2865
71
+ janus/metrics/similarity.py,sha256=9pjWWpLKCsk0QfFfSgQNdPXiisqi7WJYOOHaiT8S0iY,1613
72
+ janus/metrics/splitting.py,sha256=610ScHRvALwdkqA6YyGI-tr3a18_cUofldBxGYX0SwE,968
73
+ janus/parsers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
74
+ janus/parsers/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
75
+ janus/parsers/_tests/test_code_parser.py,sha256=G39i6fIsTxjcxBVaKyMAWgUcFslni9z9Hke2t0-XtJM,880
76
+ janus/parsers/code_parser.py,sha256=XwCoOYwnx2tpqluIdXWg-GWOOkooSDYmJHvqDrxgf48,1782
77
+ janus/parsers/doc_parser.py,sha256=X8eCb1QXbL6sVWLEFGjsPyxrpJ9XnOPg7G4KZSo9A9E,5658
78
+ janus/parsers/eval_parser.py,sha256=HB5-zY_Jpmkj6FDbuNCCVCRxwmzhViSAjPKbyyC0Ebc,2723
79
+ janus/parsers/reqs_parser.py,sha256=mOMC-7IK3huVS0oOb7m3ZHOCXUFMgTfRg6XXTowir9A,2294
80
+ janus/prompts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
81
+ janus/prompts/prompt.py,sha256=GMQ9EqwtIhB_x8MgfoeTeb4OkLaySYdGd3wVbpDMZXA,8911
82
+ janus/translate.py,sha256=UxdRNXJRVYBoJ74Tis82qYeG9aWRmQqg13lTuuyLbII,38753
83
+ janus/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
84
+ janus/utils/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
85
+ janus/utils/_tests/test_logger.py,sha256=4jZFm8LX828Dt9lOjiFHZIPbxYy_hHaswyrMPkscgdM,2199
86
+ janus/utils/_tests/test_progress.py,sha256=Yh5NDNq-24n2nhHHbJm39pENAH70PYnh9ymwdcn0_UU,481
87
+ janus/utils/enums.py,sha256=SlZKHojLPYOSjuekQGirSHem5Etcgy57txCtVCej2Ag,27533
88
+ janus/utils/logger.py,sha256=KZeuaMAnlSZCsj4yL0P6N-JzZwpxXygzACWfdZFeuek,2337
89
+ janus/utils/progress.py,sha256=pKcCzO9JOU9fSD7qTmLWcqY5smc8mujqQMXoPgqNysE,1458
90
+ janus_llm-2.0.1.dist-info/LICENSE,sha256=_j0st0a-HB6MRbP3_BW3PUqpS16v54luyy-1zVyl8NU,10789
91
+ janus_llm-2.0.1.dist-info/METADATA,sha256=ygOJ_vhFnBbZj_-B398EH_FRdjLjW2Qh1cVzn4CsRlQ,4184
92
+ janus_llm-2.0.1.dist-info/WHEEL,sha256=sP946D7jFCHeNz5Iq4fL4Lu-PrWrFsgfLXbbkciIZwg,88
93
+ janus_llm-2.0.1.dist-info/entry_points.txt,sha256=OGhQwzj6pvXp79B0SaBD5apGekCu7Dwe9fZZT_TZ544,39
94
+ janus_llm-2.0.1.dist-info/RECORD,,
@@ -1,4 +1,4 @@
1
1
  Wheel-Version: 1.0
2
- Generator: poetry-core 1.8.1
2
+ Generator: poetry-core 1.9.0
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
@@ -1,48 +0,0 @@
1
- janus/__init__.py,sha256=-GlPjV7Xwuyz240xkNmP-zQrDl7cw865MBdeudhYlLs,57
2
- janus/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
3
- janus/_tests/conftest.py,sha256=V7uW-oq3YbFiRPvrq15YoVVrA1n_83pjgiyTZ-IUGW8,963
4
- janus/_tests/test_translate.py,sha256=NBvq0m_aywXglrGtJ7VplrSLjEi2hY_lpfBwKEV3brc,14975
5
- janus/cli.py,sha256=sSZyT7RWT2HoL8sdotJVIDTiVK5Gx_prlBZ_PuRwDkE,14362
6
- janus/converter.py,sha256=e2FUyJzWcQ-GbIR9jS-Hf1OU3KlSUulVlmQcIsedDeg,4584
7
- janus/embedding/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
8
- janus/embedding/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
9
- janus/embedding/_tests/test_collections.py,sha256=gednUaBV8Lg5awDinaHpwx7XPrd8KdK7x9N6EdyzCeQ,2874
10
- janus/embedding/_tests/test_vectorize.py,sha256=Y0W5vy1j4iiQ_2t4EpN-5YeoBU9oBhO99TzHq0JH70c,1822
11
- janus/embedding/collections.py,sha256=OgIj-cVIyho0coZq4lLzwKqdQQ0c1E5bwvm9rtfy-Xk,3632
12
- janus/embedding/database.py,sha256=tabz3n1rilTQU1x2RXY0xZcqlKQ63THZ4oSNTz-9e_I,3296
13
- janus/embedding/vectorize.py,sha256=lpznhCd69WZPquHRnoiB0gXmfTPXtx6X0ZvoZIrIypA,6549
14
- janus/language/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
15
- janus/language/binary/__init__.py,sha256=AlNAe12ZA366kcGSrQ1FJyOdbwxFqGBFkYR2K6yL818,51
16
- janus/language/binary/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
17
- janus/language/binary/_tests/test_binary.py,sha256=UqBOGs14zAY5x4AaChh1ER5D2SO_0ijrT3zKGdrOedk,1054
18
- janus/language/binary/binary.py,sha256=KiQMn9iz-XzKU9f66Asoaa_3qlRb9AJqTECwv7o_v8M,6342
19
- janus/language/binary/reveng/decompile_script.py,sha256=veW51oJzuO-4UD3Er062jXZ_FYtTFo9OCkl82Z2xr6A,2182
20
- janus/language/block.py,sha256=r73vCIRHroPIfrUi5TZwEWaCE51Xt1PKQ5PNAMEhCOE,8880
21
- janus/language/combine.py,sha256=_GwSG55EIdjeb4Qch1tKr4Nn7G3iC4qkydHd_GlwvJY,3504
22
- janus/language/file.py,sha256=X2MYcAMlCABK77uhMdI_J2foXLrqEdinapYRfLPyKB8,563
23
- janus/language/mumps/__init__.py,sha256=-Ou_wJ-JgHezfp1dub2_qCYNiK9wO-zo2MlqxM9qiwE,48
24
- janus/language/mumps/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
25
- janus/language/mumps/_tests/test_mumps.py,sha256=R6jczQojibGRUKU4pqtfa5ksXz5jZykPJ3TWoo04BEw,995
26
- janus/language/mumps/mumps.py,sha256=37hscBm_eOKC6X3y8EPvKiLarMWZzbXYlreqTzqi5qg,4312
27
- janus/language/mumps/patterns.py,sha256=FW5T6Nt5kBO2UKgSL1KLVDbYRgMaJAzDvEmvBkxHppA,2310
28
- janus/language/node.py,sha256=-ymv--oILEYLVO2KSOrzOlzL2cZHNQpQJYwE1cKA-pY,200
29
- janus/language/splitter.py,sha256=G6yZot3S-pQjMpgUS0eSVdGLc33CZSybPQkh_n6i5Ls,13159
30
- janus/language/treesitter/__init__.py,sha256=mUliw7ZJLZ8NkJKyUQMSoUV82hYXE0HvLHrEdGPJF4Q,43
31
- janus/language/treesitter/_tests/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
32
- janus/language/treesitter/_tests/test_treesitter.py,sha256=C3eoH8D7tgJNsqNv1nNcOlQC_jfGvd3FtsT-Z6JpTeM,1792
33
- janus/language/treesitter/treesitter.py,sha256=vmNRsl11b8ymtGG_sNJSQkcp2oJYtHMPSltpuFO7al8,5716
34
- janus/llm/__init__.py,sha256=8Pzn3Jdx867PzDc4xmwm8wvJDGzWSIhpN0NCEYFe0LQ,36
35
- janus/llm/models_info.py,sha256=O3v-JkwWlDvdegnn4KQfspP8grfbXY2uy4hhbX81VPI,4112
36
- janus/parsers/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
37
- janus/parsers/code_parser.py,sha256=eLODJTTX7vbY2YCgjH0pROj11a0fptfBlCCOhV0omu0,9297
38
- janus/prompts/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
39
- janus/prompts/prompt.py,sha256=3LNkMLl8v45W9kMcW6qMIzKLxvtu2eK_oGIeg3yXCAI,5939
40
- janus/translate.py,sha256=VBTUq2LP7aOeE5stGx5zDH6rEGR0ET3npfctNtjPw6g,19003
41
- janus/utils/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
42
- janus/utils/enums.py,sha256=IgcBcPMYQnLrFPWyAXEKxjwoR52Y5eMEjAqcZ4Cp-gw,25511
43
- janus/utils/logger.py,sha256=KZeuaMAnlSZCsj4yL0P6N-JzZwpxXygzACWfdZFeuek,2337
44
- janus_llm-1.0.0.dist-info/LICENSE,sha256=_j0st0a-HB6MRbP3_BW3PUqpS16v54luyy-1zVyl8NU,10789
45
- janus_llm-1.0.0.dist-info/METADATA,sha256=bCGOzMdm0ZSlKfXYfuxde3tNNL9b8q-FmEZ5WeeM59w,3516
46
- janus_llm-1.0.0.dist-info/WHEEL,sha256=FMvqSimYX_P7y0a7UY-_Mc83r5zkBZsCYPm7Lr0Bsq4,88
47
- janus_llm-1.0.0.dist-info/entry_points.txt,sha256=OGhQwzj6pvXp79B0SaBD5apGekCu7Dwe9fZZT_TZ544,39
48
- janus_llm-1.0.0.dist-info/RECORD,,