athena-intelligence 0.1.62__tar.gz → 0.1.63__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.
Files changed (69) hide show
  1. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/PKG-INFO +1 -1
  2. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/pyproject.toml +1 -1
  3. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/__init__.py +2 -0
  4. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/core/client_wrapper.py +1 -1
  5. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/tools/client.py +37 -4
  6. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/__init__.py +2 -0
  7. athena_intelligence-0.1.63/src/athena/types/publish_formats.py +27 -0
  8. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/README.md +0 -0
  9. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/base_client.py +0 -0
  10. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/chain/__init__.py +0 -0
  11. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/chain/client.py +0 -0
  12. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/client.py +0 -0
  13. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/core/__init__.py +0 -0
  14. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/core/api_error.py +0 -0
  15. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/core/datetime_utils.py +0 -0
  16. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/core/file.py +0 -0
  17. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/core/http_client.py +0 -0
  18. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/core/jsonable_encoder.py +0 -0
  19. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/core/pydantic_utilities.py +0 -0
  20. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/core/remove_none_from_dict.py +0 -0
  21. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/core/request_options.py +0 -0
  22. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/dataset/__init__.py +0 -0
  23. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/dataset/client.py +0 -0
  24. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/environment.py +0 -0
  25. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/errors/__init__.py +0 -0
  26. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/errors/unprocessable_entity_error.py +0 -0
  27. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/message/__init__.py +0 -0
  28. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/message/client.py +0 -0
  29. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/polling_message_client.py +0 -0
  30. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/py.typed +0 -0
  31. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/query/__init__.py +0 -0
  32. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/query/client.py +0 -0
  33. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/report/__init__.py +0 -0
  34. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/report/client.py +0 -0
  35. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/search/__init__.py +0 -0
  36. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/search/client.py +0 -0
  37. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/snippet/__init__.py +0 -0
  38. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/snippet/client.py +0 -0
  39. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/tools/__init__.py +0 -0
  40. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/dataset.py +0 -0
  41. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/document.py +0 -0
  42. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/excecute_tool_first_workflow_out.py +0 -0
  43. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/file_data_response.py +0 -0
  44. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/firecrawl_scrape_url_data_reponse_dto.py +0 -0
  45. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/firecrawl_scrape_url_metadata.py +0 -0
  46. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/get_datasets_response.py +0 -0
  47. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/get_snippet_out.py +0 -0
  48. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/get_snippets_response.py +0 -0
  49. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/http_validation_error.py +0 -0
  50. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/langchain_documents_request_out.py +0 -0
  51. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/llm_model.py +0 -0
  52. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/map_reduce_chain_out.py +0 -0
  53. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/message_out.py +0 -0
  54. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/message_out_dto.py +0 -0
  55. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/model.py +0 -0
  56. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/report.py +0 -0
  57. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/researcher_out.py +0 -0
  58. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/snippet.py +0 -0
  59. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/sql_results.py +0 -0
  60. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/status_enum.py +0 -0
  61. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/structured_parse_result.py +0 -0
  62. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/tools.py +0 -0
  63. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/upload_documents_out.py +0 -0
  64. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/url_result.py +0 -0
  65. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/validation_error.py +0 -0
  66. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/types/validation_error_loc_item.py +0 -0
  67. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/upload/__init__.py +0 -0
  68. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/upload/client.py +0 -0
  69. {athena_intelligence-0.1.62 → athena_intelligence-0.1.63}/src/athena/version.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: athena-intelligence
3
- Version: 0.1.62
3
+ Version: 0.1.63
4
4
  Summary:
5
5
  Requires-Python: >=3.8,<4.0
6
6
  Classifier: Programming Language :: Python :: 3
@@ -1,6 +1,6 @@
1
1
  [tool.poetry]
2
2
  name = "athena-intelligence"
3
- version = "0.1.62"
3
+ version = "0.1.63"
4
4
  description = ""
5
5
  readme = "README.md"
6
6
  authors = []
@@ -17,6 +17,7 @@ from .types import (
17
17
  MessageOut,
18
18
  MessageOutDto,
19
19
  Model,
20
+ PublishFormats,
20
21
  Report,
21
22
  ResearcherOut,
22
23
  Snippet,
@@ -52,6 +53,7 @@ __all__ = [
52
53
  "MessageOut",
53
54
  "MessageOutDto",
54
55
  "Model",
56
+ "PublishFormats",
55
57
  "Report",
56
58
  "ResearcherOut",
57
59
  "Snippet",
@@ -17,7 +17,7 @@ class BaseClientWrapper:
17
17
  headers: typing.Dict[str, str] = {
18
18
  "X-Fern-Language": "Python",
19
19
  "X-Fern-SDK-Name": "athena-intelligence",
20
- "X-Fern-SDK-Version": "0.1.62",
20
+ "X-Fern-SDK-Version": "0.1.63",
21
21
  }
22
22
  headers["X-API-KEY"] = self.api_key
23
23
  return headers
@@ -16,6 +16,7 @@ from ..types.firecrawl_scrape_url_data_reponse_dto import FirecrawlScrapeUrlData
16
16
  from ..types.http_validation_error import HttpValidationError
17
17
  from ..types.langchain_documents_request_out import LangchainDocumentsRequestOut
18
18
  from ..types.llm_model import LlmModel
19
+ from ..types.publish_formats import PublishFormats
19
20
  from ..types.researcher_out import ResearcherOut
20
21
 
21
22
  # this is used as the default value for optional parameters
@@ -248,6 +249,7 @@ class ToolsClient:
248
249
  query: str,
249
250
  max_sections: int,
250
251
  guidelines: typing.Sequence[str],
252
+ publish_formats: typing.Optional[PublishFormats] = OMIT,
251
253
  request_options: typing.Optional[RequestOptions] = None,
252
254
  ) -> ResearcherOut:
253
255
  """
@@ -258,8 +260,11 @@ class ToolsClient:
258
260
 
259
261
  - guidelines: typing.Sequence[str].
260
262
 
263
+ - publish_formats: typing.Optional[PublishFormats].
264
+
261
265
  - request_options: typing.Optional[RequestOptions]. Request-specific configuration.
262
266
  ---
267
+ from athena import PublishFormats
263
268
  from athena.client import Athena
264
269
 
265
270
  client = Athena(
@@ -273,18 +278,30 @@ class ToolsClient:
273
278
  "Each sub section MUST include supporting sources using hyperlinks. If none exist, erase the sub section or rewrite it to be a part of the previous section",
274
279
  "The report MUST be written in english",
275
280
  ],
281
+ publish_formats=PublishFormats(
282
+ markdown=False,
283
+ pdf=True,
284
+ docx=False,
285
+ ),
276
286
  )
277
287
  """
288
+ _request: typing.Dict[str, typing.Any] = {
289
+ "query": query,
290
+ "max_sections": max_sections,
291
+ "guidelines": guidelines,
292
+ }
293
+ if publish_formats is not OMIT:
294
+ _request["publish_formats"] = publish_formats
278
295
  _response = self._client_wrapper.httpx_client.request(
279
296
  method="POST",
280
297
  url=urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v0/tools/researcher"),
281
298
  params=jsonable_encoder(
282
299
  request_options.get("additional_query_parameters") if request_options is not None else None
283
300
  ),
284
- json=jsonable_encoder({"query": query, "max_sections": max_sections, "guidelines": guidelines})
301
+ json=jsonable_encoder(_request)
285
302
  if request_options is None or request_options.get("additional_body_parameters") is None
286
303
  else {
287
- **jsonable_encoder({"query": query, "max_sections": max_sections, "guidelines": guidelines}),
304
+ **jsonable_encoder(_request),
288
305
  **(jsonable_encoder(remove_none_from_dict(request_options.get("additional_body_parameters", {})))),
289
306
  },
290
307
  headers=jsonable_encoder(
@@ -540,6 +557,7 @@ class AsyncToolsClient:
540
557
  query: str,
541
558
  max_sections: int,
542
559
  guidelines: typing.Sequence[str],
560
+ publish_formats: typing.Optional[PublishFormats] = OMIT,
543
561
  request_options: typing.Optional[RequestOptions] = None,
544
562
  ) -> ResearcherOut:
545
563
  """
@@ -550,8 +568,11 @@ class AsyncToolsClient:
550
568
 
551
569
  - guidelines: typing.Sequence[str].
552
570
 
571
+ - publish_formats: typing.Optional[PublishFormats].
572
+
553
573
  - request_options: typing.Optional[RequestOptions]. Request-specific configuration.
554
574
  ---
575
+ from athena import PublishFormats
555
576
  from athena.client import AsyncAthena
556
577
 
557
578
  client = AsyncAthena(
@@ -565,18 +586,30 @@ class AsyncToolsClient:
565
586
  "Each sub section MUST include supporting sources using hyperlinks. If none exist, erase the sub section or rewrite it to be a part of the previous section",
566
587
  "The report MUST be written in english",
567
588
  ],
589
+ publish_formats=PublishFormats(
590
+ markdown=False,
591
+ pdf=True,
592
+ docx=False,
593
+ ),
568
594
  )
569
595
  """
596
+ _request: typing.Dict[str, typing.Any] = {
597
+ "query": query,
598
+ "max_sections": max_sections,
599
+ "guidelines": guidelines,
600
+ }
601
+ if publish_formats is not OMIT:
602
+ _request["publish_formats"] = publish_formats
570
603
  _response = await self._client_wrapper.httpx_client.request(
571
604
  method="POST",
572
605
  url=urllib.parse.urljoin(f"{self._client_wrapper.get_base_url()}/", "api/v0/tools/researcher"),
573
606
  params=jsonable_encoder(
574
607
  request_options.get("additional_query_parameters") if request_options is not None else None
575
608
  ),
576
- json=jsonable_encoder({"query": query, "max_sections": max_sections, "guidelines": guidelines})
609
+ json=jsonable_encoder(_request)
577
610
  if request_options is None or request_options.get("additional_body_parameters") is None
578
611
  else {
579
- **jsonable_encoder({"query": query, "max_sections": max_sections, "guidelines": guidelines}),
612
+ **jsonable_encoder(_request),
580
613
  **(jsonable_encoder(remove_none_from_dict(request_options.get("additional_body_parameters", {})))),
581
614
  },
582
615
  headers=jsonable_encoder(
@@ -16,6 +16,7 @@ from .map_reduce_chain_out import MapReduceChainOut
16
16
  from .message_out import MessageOut
17
17
  from .message_out_dto import MessageOutDto
18
18
  from .model import Model
19
+ from .publish_formats import PublishFormats
19
20
  from .report import Report
20
21
  from .researcher_out import ResearcherOut
21
22
  from .snippet import Snippet
@@ -45,6 +46,7 @@ __all__ = [
45
46
  "MessageOut",
46
47
  "MessageOutDto",
47
48
  "Model",
49
+ "PublishFormats",
48
50
  "Report",
49
51
  "ResearcherOut",
50
52
  "Snippet",
@@ -0,0 +1,27 @@
1
+ # This file was auto-generated by Fern from our API Definition.
2
+
3
+ import datetime as dt
4
+ import typing
5
+
6
+ from ..core.datetime_utils import serialize_datetime
7
+ from ..core.pydantic_utilities import pydantic_v1
8
+
9
+
10
+ class PublishFormats(pydantic_v1.BaseModel):
11
+ markdown: bool
12
+ pdf: bool
13
+ docx: bool
14
+
15
+ def json(self, **kwargs: typing.Any) -> str:
16
+ kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
17
+ return super().json(**kwargs_with_defaults)
18
+
19
+ def dict(self, **kwargs: typing.Any) -> typing.Dict[str, typing.Any]:
20
+ kwargs_with_defaults: typing.Any = {"by_alias": True, "exclude_unset": True, **kwargs}
21
+ return super().dict(**kwargs_with_defaults)
22
+
23
+ class Config:
24
+ frozen = True
25
+ smart_union = True
26
+ extra = pydantic_v1.Extra.allow
27
+ json_encoders = {dt.datetime: serialize_datetime}