<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] ## pipeline 的處理流程 1. **預處理 **(preprocessing),將原始文本轉換為模型可以接受的輸入格式; 2. 將處理好的輸入**送入模型**; 3. 對模型的輸出進行**后處理 **(postprocessing),將其轉換為人類方便閱讀的格式。 ![](https://img.kancloud.cn/20/92/209296e0a4dd6188428e65e89451e158_2794x945.png) ### 使用分詞器進行預處理 因為神經網絡模型無法直接處理文本,因此首先需要通過**預處理**環節將文本轉換為模型可以理解的數字。具體地,我們會使用每個模型對應的分詞器 (tokenizer) 來進行: 1. 將輸入切分為詞語、子詞或者符號(例如標點符號),統稱為**tokens**; 2. 根據模型的詞表將每個 token 映射到對應的 token 編號(就是一個數字); 3. 根據模型的需要,添加一些額外的輸入。 如 ``` from transformers import AutoTokenizer checkpoint = "distilbert-base-uncased-finetuned-sst-2-english" tokenizer = AutoTokenizer.from_pretrained(checkpoint) raw_inputs = [ "I've been waiting for a HuggingFace course my whole life.", "I hate this so much!", ] inputs = tokenizer(raw_inputs, padding=True, truncation=True, return_tensors="pt") print(inputs) ``` > 每個模型都有自定特定的預處理通過 Hub 中找到對應模型的相關操作 輸出 ``` { 'input_ids': tensor([ [ 101, 1045, 1005, 2310, 2042, 3403, 2005, 1037, 17662, 12172, 2607, 2026, 2878, 2166, 1012, 102], [ 101, 1045, 5223, 2023, 2061, 2172, 999, 102, 0, 0, 0, 0, 0, 0, 0, 0] ]), 'attention_mask': tensor([ [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], [1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0] ]) } ``` ### 將預處理好的輸入送入模型 ``` from transformers import AutoModel checkpoint = "distilbert-base-uncased-finetuned-sst-2-english" model = AutoModel.from_pretrained(checkpoint) ``` >所有 pipelines 都具有類似的模型結構,只是模型的最后一部分會使用不同的 head 以完成對應的任務。 ![](https://img.kancloud.cn/fb/2f/fb2f6dc39db13781a1a1766cddbbfd95_2444x1143.png) Transformers 庫封裝了很多不同的結構,常見的有: * `*Model`(返回 hidden states) * `*ForCausalLM`(用于條件語言模型) * `*ForMaskedLM`(用于遮蓋語言模型) * `*ForMultipleChoice`(用于多選任務) * `*ForQuestionAnswering`(用于自動問答任務) * `*ForSequenceClassification`(用于文本分類任務) * `*ForTokenClassification`(用于 token 分類任務,例如 NER) ### 對模型輸出進行后處理 由于模型的輸出只是一些數值,因此并不適合人類閱讀。例如我們打印出上面例子的輸出:
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看