(prompt: str, model_id: int, think_mode: int, file_refs: list = None, extra_fields: dict = None)
| 105 | |
| 106 | |
| 107 | def _build_payload(prompt: str, model_id: int, think_mode: int, file_refs: list = None, extra_fields: dict = None) -> str: |
| 108 | inner = [None] * 102 |
| 109 | if file_refs: |
| 110 | refs = [[None, None, ref] for ref in file_refs] |
| 111 | inner[0] = [prompt, 0, None, refs, None, None, 0] |
| 112 | else: |
| 113 | inner[0] = [prompt, 0, None, None, None, None, 0] |
| 114 | inner[1] = ["en"] |
| 115 | inner[2] = ["", "", "", None, None, None, None, None, None, ""] |
| 116 | inner[6] = [0] |
| 117 | inner[7] = 1 |
| 118 | inner[10] = 1 |
| 119 | inner[11] = 0 |
| 120 | inner[17] = [[think_mode]] |
| 121 | inner[18] = 0 |
| 122 | inner[27] = 1 |
| 123 | inner[30] = [4] |
| 124 | inner[41] = [2] |
| 125 | inner[53] = 0 |
| 126 | inner[59] = str(uuid.uuid4()) |
| 127 | inner[61] = [] |
| 128 | inner[68] = 1 |
| 129 | inner[79] = model_id |
| 130 | if extra_fields: |
| 131 | for k, v in extra_fields.items(): |
| 132 | inner[k] = v |
| 133 | outer = [None, json.dumps(inner)] |
| 134 | params = {"f.req": json.dumps(outer)} |
| 135 | if CONFIG.get("xsrf_token"): |
| 136 | params["at"] = CONFIG["xsrf_token"] |
| 137 | return urllib.parse.urlencode(params) |
| 138 | |
| 139 | |
| 140 | def _get_url() -> str: |
no outgoing calls
no test coverage detected