日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

脚本 api_从脚本到预测API

發(fā)布時間:2023/11/29 编程问答 53 豆豆
生活随笔 收集整理的這篇文章主要介紹了 脚本 api_从脚本到预测API 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

腳本 api

This is the continuation of my previous article:

這是我上一篇文章的延續(xù):

From Jupyter Notebook To Scripts

從Jupyter Notebook到腳本

Last time we discussed how to convert Jupyter Notebook to scripts, together with all sorts of basic engineering practices such as CI, unit testing, package environment, configuration, logging, etc

上次我們討論了如何將Jupyter Notebook轉(zhuǎn)換為腳本,以及各種基本工程實踐,例如CI,單元測試,軟件包環(huán)境,配置,日志記錄等。

Even with the script form, it still requires us to change the configuration and run the script, It is OK for Kaggle competitions because all you need is just the submission.csv, but you probably don’t want to sit behind the computer 24/7 and hit Run whenever users send you a prediction request 🙁

即使使用腳本形式,它仍然需要我們更改配置并運行腳本。對于Kaggle競賽來說,這是可以的,因為您所需要的只是submitt.csv ,但您可能不想坐在計算機后面24 / 7,并在用戶向您發(fā)送預(yù)測請求時點擊運行🙁

In this article, we will discuss how to utilize the models we have built last time and create prediction APIs to do model serving using FastAPI!

在本文中,我們將討論如何利用上次構(gòu)建的模型并創(chuàng)建預(yù)測API來使用FastAPI進行模型服務(wù)!

For ML/DL folks, we are talking about FastAPI, NOT fast.ai !!!

對于ML / DL人士,我們正在談?wù)揊astAPI ,而不是fast.ai !

背景:FastAPI (Background: FastAPI)

There are many frameworks in Python ecosystem for API, my original thought was to use Flask. But I am impressed by how simple and intuitive [and fast as the name suggests] FastAPI is and love to try it out in this mini-project!

Python生態(tài)系統(tǒng)中有許多API框架,我最初的想法是使用Flask。 但是,令我印象深刻的是FastAPI如此簡單和直觀(而且顧名思義,它很快),我喜歡在這個小型項目中嘗試一下!

“Rome wasn’t built in a day”, FastAPI has learned a lot from the previous frameworks such as Django, Flask, APIStar, I cannot explain better than the creator himself and this article is great!

“羅馬不是一天建成的”,FastAPI從Django,Flask,APIStar之類的先前框架中學(xué)到了很多東西,我無法比創(chuàng)建者本人解釋得更好,并且這篇文章很棒!

無聊但必要的設(shè)置 (The boring but necessary setup)

Things are all in one repo which is probably not a good practice, it should be different GitHub repo in the real use case, maybe I will refactor [professional way to say “clean my previous sxxt”] later!

事情全放在一個倉庫中 ,這可能不是一個好習(xí)慣,在實際用例中應(yīng)該是不同的GitHub倉庫,也許以后我會重構(gòu) [專業(yè)方式來“清理我以前的sxxt”]!

*CS folks always say single responsibility principle, instead of saying “don’t put code with different functionalities together”, next time maybe you can say “we should follow single responsibility principle for this!”

* CS員工總是說單一責(zé)任原則 ,而不是說“不要將具有不同功能的代碼放在一起”,下次您可以說“我們應(yīng)該遵循單一責(zé)任原則!”

First of all, let’s update requirements.txt with the new packages, as we mentioned last time, we should specify the exact version such that others can reproduce the work!

首先,讓我們用新的軟件包更新requirements.txt,正如我們上次提到的那樣,我們應(yīng)該指定確切的版本 ,以便其他人可以復(fù)制作品!

# for last article
pytest==6.0.1
pandas==1.0.1
Click==7.0
scikit-learn==0.22.1
black==19.10b0
isort==4.3.21
PyYAML==5.2# for FastAPI
fastapi==0.61.0
uvicorn==0.11.8
chardet==3.0.4

After this, we need to install requirements.txt again in the conda env [because we have new packages]

此后,我們需要在conda env中再次安裝requirements.txt [因為我們有新軟件包]

# You can skip the line below if you have created conda env
conda create - name YOU_CHANGE_THIS python=3.7 -yconda activate YOU_CHANGE_THISpip install –r requirements.txt

游戲計劃 (The game plan)

Let’s think about what is happening, we want to have API endpoint to do prediction, to be specific if users give us the input, we need to use the model to predict and return prediction.

讓我們考慮發(fā)生了什么,我們想要讓API端點進行預(yù)測,具體來說,如果用戶給我們輸入,我們需要使用模型來預(yù)測并返回預(yù)測。

Instead of having us [human] handle the incoming request, we just create an API server to wait for the requests, parse the inputs, do prediction, and return results. API is just the structural way to talk to our computer and ask for the service [prediction in this case]

代替讓我們 [人類]處理傳入的請求,我們只是創(chuàng)建一個API服務(wù)器來等待請求,解析輸入,進行預(yù)測并返回結(jié)果。 API只是與我們的計算機對話并請求服務(wù)的結(jié)構(gòu)化方式[在這種情況下為預(yù)測]

Below is the pseudocode:

下面是偽代碼:

# Load trained model
trained_model = load_model(model_path)# Let's create a API that can receive user request
api = CreateAPI()# If user send us the request to `predict` endpoint
when user sends request to `api`.`predict`:
input = api[`predict`].get(input) # get input
prediction = trained_model(input) # apply model
return prediction # return prediction

This is good for the happy flow! But we should NEVER trust the user, just ask yourself, will you ever read the user manual in your daily life?

這對幸福的流好! 但是,我們永遠不要相信用戶,只是問問自己,您是否會在日常生活中閱讀用戶手冊?

For example, we expect {‘a(chǎn)’: 1, ‘b’: 2, ‘c’: 3} from the user but we may get:

例如,我們希望用戶收到{'a':1,'b':2,'c':3},但我們可能會得到:

  • Wrong order {‘b’: 2, ‘a(chǎn)’: 1, ‘c’: 3}, or

    錯誤的順序{'b':2,'a':1,'c':3},或
  • Wrong key {‘a(chǎn)’: 1, ‘b’: 2, ‘d’: 3}, or

    錯誤的鍵{'a':1,'b':2,'d':3},或
  • Missing key{‘a(chǎn)’: 1, ‘b’: 2}, or

    缺少鍵{'a':1,'b':2}或
  • Negative value {‘a(chǎn)’: -1, ‘b’: 2, ‘c’: 3}, or

    負值{'a':-1,'b':2,'c':3},或
  • Wrong type {‘a(chǎn)’: “HELLO WORLD”, ‘b’: 2, ‘c’: 3}, or

    錯誤的類型{'a':“ HELLO WORLD”,“ b”:2,“ c”:3}或
  • etc etc

This is fatal to our API because our model doesn’t know how to respond to this. We need to introduce some input structures to protect us! Therefore, we should update our pseudocode!

這對我們的API是致命的,因為我們的模型不知道如何響應(yīng)。 我們需要引入一些輸入結(jié)構(gòu)來保護我們! 因此,我們應(yīng)該更新我們的偽代碼!

# Define input schema
input_schema = {......}
# Load trained model
trained_model = load_model(model_path)# Let's create a API that can receive user request
api = CreateAPI()# If user send us the request to `predict` endpoint
when user sends request to `api`.`predict`:
input = api[`predict`].get(input) # get input
transformed_input = apply(input_schema, input)
if not transformed_input.valid(): return Error
prediction = trained_model(transformed_input) # apply model
return prediction # return prediction

代碼 (The Code)

Looks good to me now! Let’s translate them using FastAPI part by part!

現(xiàn)在對我來說很好! 讓我們使用FastAPI進行部分翻譯!

Input schema

輸入模式

It seems many lines but things are the same, as you can guess, we define a class called `Sample` which defines every predictor as float and greater than [gt] zero!

似乎有很多行,但是事情都是一樣的,正如您所猜到的,我們定義了一個名為`Sample`的類,該類將每個預(yù)測變量定義為float且大于[gt]零!

Load model

負荷模型

Then we load the trained model, hmmm what is `Predictor`? it is just a custom class that wraps the model with different methods so we can call a method instead of implementing the logic in API server

然后我們加載訓(xùn)練后的模型hmmm,什么是“預(yù)測變量”? 它只是一個自定義類,使用不同的方法包裝模型,因此我們可以調(diào)用方法而不是在API服務(wù)器中實現(xiàn)邏輯

Create an API server

創(chuàng)建一個API服務(wù)器

Then we create the API using FastAPI……pseudocode is almost the code already

然后我們使用FastAPI創(chuàng)建API……偽代碼幾乎已經(jīng)是代碼

predict endpoint

預(yù)測終點

This looks complicated but they are very straightforward

這看起來很復(fù)雜,但是非常簡單

Instead of saying “when the user sends a request to `api`.`predict`”

而不是說“當(dāng)用戶向api發(fā)送請求時。預(yù)測”。

We say: “Hey, app, if people send “GET request” to `predict`, please run function predict_item, we expect the input follows the schema we defined in `Sample`”

我們說: “嘿,應(yīng)用程序,如果人們向“ predict” 發(fā)送“ GET request”,請運行函數(shù)predict_item,我們期望輸入遵循我們在“ Sample”中定義的模式?!?

What predict_item does is only transform input shape, feed to trained model and return the prediction, simple Python function

Forecast_item所做的只是變換輸入形狀,輸入經(jīng)過訓(xùn)練的模型并返回預(yù)測,簡單的Python函數(shù)

If you want to know more about HTTP request methods

如果您想進一步了解HTTP請求方法

But you may ask: hey! One line is missing!!! Where is the input validation? What if users provide the wrong data type/key or miss a field?

但是您可能會問:嘿! 缺少一行!!! 輸入驗證在哪里? 如果用戶提供了錯誤的數(shù)據(jù)類型/密鑰或缺少字段怎么辦?

Well…….Remember we have defined `Sample` class for the input schema? Fast API automatically validates it for us according to the schema and we don’t need to care about that!!! This saves a lot of brainpower and many lines of code to build a robust and well-tested API!

好吧……。還記得我們?yōu)檩斎肽J蕉x了`Sample`類嗎? 快速API會根據(jù)架構(gòu)自動為我們驗證它,我們不需要在意!!!! 這樣可以節(jié)省大量的人力資源和許多行代碼,以構(gòu)建強大且經(jīng)過良好測試的API!

嘗試使用 (Try to use)

# At project root, we can run this
# --reload is for development, API server autorefresh
# when you change the codeuvicorn prediction_api.main:app --reload

You should be able to see these, the API server is now running on “http://127.0.0.1:8000”!

您應(yīng)該能夠看到這些,API服務(wù)器現(xiàn)在正在“ http://127.0.0.1:8000”上運行!

There are different ways to experiment with the API, depending on your environment, you may use requests in Python or cURL in the command line. BTW there is a handy tool is called Postman, try it out, it is a very intuitive and user-friendly tool for API!

有多種嘗試API的方法,具體取決于您的環(huán)境,您可以在命令行中使用Python或cURL中的 請求 。 順便說一句,有一個方便的工具叫做Postman ,試試看,它是一個非常直觀且用戶友好的API工具!

We will use Python requests for the following examples, you can see them in this Notebook [sometimes Jupyter is helpful 😎]

我們將針對以下示例使用Python請求,您可以在本筆記本中查看它們[有時Jupyter會有所幫助😎]

Example below uses a valid input: YEAH! 😍 We made it! The endpoint returns the prediction!!!

以下示例使用有效輸入:YEAH! 😍我們做到了! 端點返回預(yù)測!!!

payload = {
"fixed_acidity": 10.5,
"volatile_acidity": 0.51,
"citric_acid": 0.64,
"residual_sugar": 2.4,
"chlorides": 0.107,
"free_sulfur_dioxide": 6.0,
"total_sulfur_dioxide": 15.0,
"density": 0.9973,
"pH": 3.09,
"sulphates": 0.66,
"alcohol": 11.8,
}result = requests.get("http://127.0.0.1:8000/predict", data = json.dumps(payload))print(result.json())Output
{'prediction': 1, 'utc_ts': 1597537570, 'model': 'RandomForestClassifier'}

Example below misses a field and FastAPI helps us to handle it according to our defined schema, I literally write nothing other than the schema class

下面的示例錯過了一個字段,FastAPI可以幫助我們根據(jù)定義的模式來處理它,我只寫了架構(gòu)類

payload = {
"volatile_acidity": 0.51,
"citric_acid": 0.64,
"residual_sugar": 2.4,
"chlorides": 0.107,
"free_sulfur_dioxide": 6.0,
"total_sulfur_dioxide": 15.0,
"density": 0.9973,
"pH": 3.09,
"sulphates": 0.66,
"alcohol": 11.8,
}result = requests.get("http://127.0.0.1:8000/predict", data = json.dumps(payload))print(result.json())Output
{'detail': [{'loc': ['body', 'fixed_acidity'], 'msg': 'field required', 'type': 'value_error.missing'}]}

Just for fun, I also implemented a update_model PUT API to swap the models, for example, originally we were using Random Forest, I updated it to Gradient Boosting??

只是為了好玩,我還實現(xiàn)了update_model PUT API來交換模型,例如,最初我們使用隨機森林,我將其更新為GradientBoosting??

result = requests.put("http://127.0.0.1:8000/update_model")print(result.json())Output
{'old_model': 'RandomForestClassifier', 'new_model': 'GradientBoostingClassifier', 'utc_ts': 1597537156}

自動產(chǎn)生的文件 (Auto-generated Document)

One of the cool FastAPI features is auto-document, just go to http://127.0.0.1:8000/docs#/ and you will have the interactive and powerful API document out of the box! So intuitive that I don’t need to elaborate

FastAPI的一項很酷的功能是自動文檔,只需轉(zhuǎn)到http://127.0.0.1:8000/docs#/ ,您便可以立即獲得強大的交互式API文檔! 如此直觀,我無需贅述

重新訪問pytest (Revisit pytest)

I cannot emphasize enough about the importance of unit testing, it verifies the functions are doing what we expect them to do such that you will not break things accidentally!

對于單元測試的重要性,我不能太強調(diào),它可以驗證功能是否正在按我們期望的方式進行,以確保您不會意外破壞!

But if I try to cover every test it will be too boring and lengthy. What I plan to do here is to share some areas I will brainlessly test & some [probably useful] articles. Then I will talk about a pytest feature called parameterized unit test and some testing options in pytest. The easiest way to motivate yourself to learn unit testing is to try to refactor your previous code, the larger the better!

但是,如果我嘗試涵蓋所有測試,那將太無聊且冗長。 我打算在這里做的是分享我將無腦地測試的一些領(lǐng)域和一些[可能有用的]文章。 然后,我將討論一種稱為參數(shù)化單元測試的pytest功能以及pytest中的一些測試選項。 激勵自己學(xué)習(xí)單元測試的最簡單方法是嘗試重構(gòu)您以前的代碼,越大越好!

Unit testing

單元測試

Whenever you found difficult to write/understand the unit tests, you probably need to review your code structure first. Below are 4 areas that I will consider brainlessly:

每當(dāng)發(fā)現(xiàn)難以編寫/理解單元測試時,您可能需要首先查看您的代碼結(jié)構(gòu)。 以下是我將全力以赴的4個方面:

  • Input data: dimension [eg: df.shape], type [eg: str], value range [eg: -/0/+]

    輸入數(shù)據(jù):尺寸[例如:df.shape],類型[例如:str],值范圍[例如:-/ 0 / +]
  • Output data: dimension [eg: df.shape], type [eg: str], value range [eg: -/0/+]

    輸出數(shù)據(jù):尺寸[例如:df.shape],類型[例如:str],值范圍[例如:-/ 0 / +]
  • Compare: output and expected result

    比較:輸出和預(yù)期結(jié)果
  • After I debug, prevent it happens again

    調(diào)試后,防止再次發(fā)生
  • For example, I focus quite a lot on output dimension, type, value range below. It seems simple but if you modify any output format, it will remind you what is the expected formats!

    例如,我將很多精力放在下面的輸出尺寸,類型,值范圍上。 看起來很簡單,但是如果您修改任何輸出格式,它將提醒您期望的格式是什么!

    Some articles FYR:

    FYR的一些文章:

    Unit Testing for Data Scientists

    數(shù)據(jù)科學(xué)家的單元測試

    How to unit test machine learning code [deep learning]

    如何對機器學(xué)習(xí)代碼進行單元測試 [深度學(xué)習(xí)]

    Parameterized unit test

    參數(shù)化單元測試

    Suppose you have 100 mock data [annotate by D_i, i: 1..100] and you want to run the same unit test for each of them, how will you do?

    假設(shè)您有100個模擬數(shù)據(jù)[用D_i注釋,我:1..100注釋],并且您要為每個模擬數(shù)據(jù)運行相同的單元測試,您將如何處理?

    A brute force solution

    蠻力解決方案

    def test_d1():
    assert some_operation(D_1)def test_d2():
    assert some_operation(D_2)def test_d3():
    assert some_operation(D_3)......def test_d100():
    assert some_operation(D_100)

    But if you need to modify `some_operation`, you need to modify it 100 times LOL………Although you can make it as a utility function, this makes the tests hard to read and very lengthy

    但是,如果您需要修改“ some_operation”,則需要對其進行100倍的LOL修改…………盡管您可以將其作為實用程序功能使用,但這會使測試難以閱讀且非常冗長

    A better way maybe for-loop?

    更好的方法也許是循環(huán)的?

    def test_d():
    for D in [D_1, D_2, D_3, ..., D_100]:
    assert some_operation(D)

    But you can’t know exactly which tests fail because these 100 tests are all in one test

    但是您無法確切知道哪些測試失敗,因為這100個測試全部在一個測試中

    pytest offers us a feature called parametrize

    pytest為我們提供了一個稱為 參數(shù)化 的功能

    @pytest.mark.parametrize("test_object", [D_1, D_2, ..., D_100])
    def test_d(test_object):
    assert some_operation(test_object)

    Common pytest options

    常見的pytest選項

    pytest FOLDER

    pytest文件夾

    Last time we mentioned we can just run `pytest` in command line and pytest will find ALL the tests under the folder itself. But sometimes we may not want to run all the unit tests during development [maybe some tests take a long time but unrelated to your current tasks]

    上次提到時,我們可以在命令行中運行pytest ,而pytest將在文件夾本身下找到所有測試。 但是有時我們可能不希望在開發(fā)過程中運行所有的單元測試[也許某些測試需要很長時間,但與您當(dāng)前的任務(wù)無關(guān)]

    In that case, you can simply run pytest FOLDER, eg: `pytest ./scripts` or `pytest ./prediction_api` in the demo

    在這種情況下,您可以簡單地運行pytest FOLDER ,例如:演示中的`pytest。/ scripts`或`pytest。/ prediction_api`。

    parallel pytest

    并行pytest

    Sometimes your test cases are too heavy, it may be a good idea to run things in parallel! You can install pytest-xdist and replace pytest by py.test in your command, eg: py.test -n 4

    有時您的測試用例過于繁重,最好并行運行! 您可以在命令中安裝pytest-xdist并用py.test替換pytest,例如:py.test -n 4

    pytest -v

    pytest -v

    This is personal taste, I prefer the verbose output and see green PASSED ? to start my day

    這是個人喜好,我更喜歡詳細的輸出,看到綠色的PASSED ASS開始我的一天

    pytestpytest pytest -vpytest -v

    You can read more from the materials below:

    您可以從以下材料中了解更多信息:

    https://docs.pytest.org/en/stable/

    https://docs.pytest.org/en/stable/

    https://www.guru99.com/pytest-tutorial.html#5

    https://www.guru99.com/pytest-tutorial.html#5

    最后,我希望您能像我一樣欣賞這段1分鐘的YouTube視頻 😆 (At last, I hope you can enjoy this 1 min Youtube video as I do 😆)

    結(jié)論 (Conclusions)

    Yooo? we have created a prediction API that consumes our model, users can now send the request and get the prediction without a human sitting behind, this over-simplifies the reality [throughput, latency, model management, authentication, AB testing, etc] but this is the idea!

    ?,我們創(chuàng)建了一個預(yù)測API,該API可以使用我們的模型,用戶現(xiàn)在可以發(fā)送請求并獲得預(yù)測,而無需人工干預(yù),這過分簡化了現(xiàn)實情況(吞吐量,延遲,模型管理,身份驗證,AB測試等)但這是主意!

    At least if your prototype is at this level, engineers are much happier to take over from this point and hence speed up the whole process, and you can show them you know something 😈

    至少如果您的原型處于此級別,工程師會更樂于接受這一點,從而加快了整個過程的速度,您可以向他們展示您知道的東西😈

    To wrap up, we:

    最后,我們:

    a. Update conda env [requirements.txt]
    b. Brainstorm pseudocode and convert to code [FastAPI, uvicorn]
    c. Utilize API [cURL, requests, Postman]
    d. Talk about Auto-generated documents by FastAPI
    e. Some pytest techniques [parallel, parameterized, -v]

    File tree below to show the development steps

    下面的文件樹顯示了開發(fā)步驟

    .
    ├── notebook
    │ ├── prediction-of-quality-of-wine.ipynb
    │ └── prediction_API_test.ipynb [c] <-consume API
    ├── prediction_api
    │ ├── __init__.py
    │ ├── api_utility.py [b] <-wrap up methods
    │ ├── main.py [b] <-modify demo
    │ ├── mock_data.py [e] <-Unit test
    │ ├── test_api_utility.py [e] <-Unit test
    │ └── test_main.py [e] <-Unit test
    ├── requirements.txt [a] <-FastAPI doc
    .
    .
    .

    BUT (again, bad news usually starts with BUT) they are still on my local computer.

    但是 (同樣,壞消息通常以BUT開始)它們?nèi)匀辉谖业?strong>本地計算機上。

    Although we don’t need to sit behind and hit Run, the user requests cannot reach the API endpoints. Even if they do, it means I cannot close my Macbook, it means I cannot scale if there are many incoming prediction requests😱!!!

    盡管我們不需要坐在后面并單擊“運行”,但用戶請求無法到達API端點。 即使它們這樣做,也意味著我無法關(guān)閉我的Macbook,這意味著如果有很多傳入的預(yù)測請求,我也無法擴展😱!

    The way to escape from this hell, as we mentioned in the last article, is to either buy another computer OR rent a server from cloud providers such as AWS

    就像我們在上一篇文章中提到的那樣,擺脫困境的方法是要么購買另一臺計算機,要么從云服務(wù)提供商(例如AWS)租用服務(wù)器。

    But first, we also need to ensure the code is working fine there! How?

    但是首先,我們還需要確保該代碼在這里能正常工作! 怎么樣?

    Short answer: Docker

    簡短答案:Docker

    Aside:

    在旁邊:

    Although I haven’t tried, there is a startup called Cortex which focuses on open source machine learning API framework and they also use FastAPI under the hood!

    盡管我還沒有嘗試過,但是有一家名為Cortex的初創(chuàng)公司專注于開源機器學(xué)習(xí)API框架,他們還使用了FastAPI !

    By now, you should be able to understand their tutorial, in short, they solve many production-level problems behind the scene such as rolling update, DL model inference, integration with AWS, Autoscaling etc…… [These are DevOps concerns? Or maybe fancier term: MLOps]

    到目前為止,您應(yīng)該已經(jīng)能夠理解他們的教程,簡而言之,他們解決了幕后的許多生產(chǎn)級問題,例如滾動更新,DL模型推斷,與AWS集成,Autoscaling等……[這些是DevOps所關(guān)注的嗎? 也許是更特別的術(shù)語: MLOps

    But from user [aka you] perspective, they deploy the APIs using declarative yml [similar to how we configure model in the last article], have a predictor class [similar to our Predictor class], trainer.py [similar to train.py in the last article]

    但是從用戶[aka you]的角度來看,他們使用聲明性yml部署API [類似于上一篇文章中的配置模型的方式],有一個預(yù)報器類[類似于我們的Predictor類],trainer.py [類似于train.py在上一篇文章中]

    Writing the code is relatively easy but writing an article for the code is hard, if you found this article useful, you can leave some comments

    編寫代碼相對容易,但是為代碼編寫文章卻很困難,如果您發(fā)現(xiàn)本文有用,則可以留下一些評論

    OR you can star my repo!

    或者你可以給我的倉庫加注星號!

    OR my LinkedIn [Welcome but please leave a few words to indicate you are not zombie]!

    或我的LinkedIn (歡迎使用,請留下幾句話以表明您不是僵尸)!

    BTW, we know COVID-19 has bad if not catastrophic impacts on everyone’s career, especially for graduates. Research shows the unlucky effect can set a graduate back for years given they do nothing wrong. Well……what else can you say🤒? If you [or know people who] are hiring, feel free to reach out and we can forward the opportunities to people who are in need 🙏

    順便說一句,我們知道COVID-19對每個人的職業(yè)都有嚴重的影響,即使不是災(zāi)難性的影響,尤其是對于畢業(yè)生而言。 研究 表明,不幸的是,只要他們沒有做錯任何事情,就會使畢業(yè)生退縮多年。 好吧……你還能說什么? 如果你[或知道是誰的人]雇用,隨意 伸手 ,我們可以轉(zhuǎn)發(fā)機會的人誰需要 🙏

    翻譯自: https://towardsdatascience.com/from-scripts-to-prediction-api-2372c95fb7c7

    腳本 api

    總結(jié)

    以上是生活随笔為你收集整理的脚本 api_从脚本到预测API的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。

    亚洲国产成人精品电影在线观看 | 国产精品99久久久久久久久 | 成人网看片 | 色婷婷激情五月 | 天天干天天综合 | 免费视频三区 | 久久久精品久久 | 亚洲人在线视频 | 久久三级视频 | 97免费公开视频 | 成年美女黄网站色大片免费看 | 久久久久久久久电影 | 欧美日韩免费视频 | 91久草视频 | 日韩综合第一页 | 成人黄视频 | 91视频麻豆视频 | 91香蕉国产 | 综合成人在线 | 狠狠狠色丁香婷婷综合久久88 | 国产一区欧美日韩 | 一区二区三区高清在线观看 | 99爱国产精品| 国产a级免费 | 日韩一区二区免费视频 | 国产免码va在线观看免费 | 女人高潮特级毛片 | 99资源网 | 天天干,狠狠干 | 国产亚洲精品女人久久久久久 | 日韩精品一区二区三区丰满 | 国产精品久久久网站 | 免费福利视频网 | 免费日韩一区二区三区 | 日韩在线观看三区 | www91在线观看 | 美女免费视频观看网站 | 91av综合| 国产香蕉久久 | 日本公妇在线观看高清 | 91日韩精品视频 | 天天干天天干天天 | 美女视频一区 | 亚洲黄电影 | 日韩字幕在线观看 | 精品国产精品一区二区夜夜嗨 | 狠狠色丁香久久综合网 | 亚洲成人欧美 | 婷婷丁香久久五月婷婷 | 99精品国产兔费观看久久99 | 国内精品久久久久久久 | 日韩精品视频免费 | 亚洲日本国产精品 | 香蕉视频网址 | 中文字幕二区在线观看 | 日躁夜躁狠狠躁2001 | 天天爱天天射天天干天天 | 久久艹久久 | 美女网站色免费 | 亚洲视频一 | a国产精品| 久久美女电影 | 久久久久久综合 | 精壮的侍卫呻吟h | 五月婷婷六月综合 | 亚洲永久精品国产 | 日韩av一区二区在线影视 | 亚洲在线视频播放 | 亚洲五月婷| 视频一区二区精品 | 久久毛片视频 | 特黄特色特刺激视频免费播放 | 久亚洲| 又黄又爽又湿又无遮挡的在线视频 | 国产一区二区观看 | 精品国产一区二区三区久久久蜜臀 | www.久久视频 | 麻豆久久 | 97超视频免费观看 | 久精品在线 | 黄色官网在线观看 | 婷婷丁香av | 国产另类av | 国产精品久久久久婷婷二区次 | 色视频在线免费 | 在线观看日韩中文字幕 | 免费看色视频 | 精油按摩av| 亚洲综合视频在线观看 | 波多野结衣在线观看一区 | 亚洲高清在线视频 | 丁香六月中文字幕 | 久久99精品国产99久久 | wwwwwww黄 | 色偷偷88888欧美精品久久久 | 日韩一级片大全 | 97超碰精品 | 婷婷丁香视频 | 亚洲三级视频 | 日本一区二区不卡高清 | 在线观看亚洲专区 | 日韩电影一区二区在线 | 精品国产一区二区三区不卡 | 激情综合狠狠 | 美女网站视频免费黄 | 亚洲精品在线观看视频 | 中文不卡视频 | 免费看色视频 | 99 久久久久 | 亚洲成人av一区 | 免费视频 三区 | 91精品国产三级a在线观看 | 久草爱视频 | 999视频在线播放 | 欧美日韩不卡一区二区三区 | 精品久久久久久亚洲综合网站 | 久久艹在线观看 | 亚洲一级电影 | 看毛片网站 | 亚洲精品国产精品国自 | 日韩精品专区在线影院重磅 | 国产一区二区三区免费在线 | 中文字幕精品一区 | 97av视频在线| 人人模人人爽 | 天天操天 | av片免费播放 | 国产成人精品久久亚洲高清不卡 | 成人在线观看网址 | 天天综合导航 | 精品欧美一区二区在线观看 | 久久久免费播放 | 在线观看成人小视频 | 久久综合色影院 | 日韩综合一区二区 | 国产视频在 | 久久久高清 | 97偷拍在线视频 | 亚洲国产中文字幕在线观看 | 激情久久小说 | 中文字幕av一区二区三区四区 | 久久综合免费视频 | 黄色av电影免费观看 | 色国产在线 | 91精选在线| 国产成人一区二区三区在线观看 | 日韩精品资源 | 久久www免费视频 | 香蕉久久久久久久 | 成人sm另类专区 | 久久社区视频 | 日本黄色免费看 | 日本久久精品 | 国产精品久久久久久电影 | 349k.cc看片app | 国产91精品在线观看 | 久久国产品 | 国产一级黄色免费看 | 99久久99久久免费精品蜜臀 | 超碰在线免费福利 | 激情欧美一区二区三区免费看 | 中文字幕视频三区 | 国产三级精品三级在线观看 | 欧美日韩免费观看一区=区三区 | 亚洲少妇xxxx | 日韩中文在线字幕 | 天天干天天做 | 色婷婷丁香| 国产美女主播精品一区二区三区 | 国产精品丝袜久久久久久久不卡 | 韩国一区二区三区在线观看 | 97视频一区 | 日韩三级.com | 日韩毛片在线一区二区毛片 | 久久一线 | 日日干夜夜爱 | 99精品在线视频观看 | 99久久婷婷国产精品综合 | 久久在线观看 | 色天天综合久久久久综合片 | 在线成人中文字幕 | 在线 视频 亚洲 | 色wwww| 国产亚洲精品成人av久久ww | 成人av在线电影 | 午夜三级大片 | 亚洲成人av一区 | 久久久影院一区二区三区 | 欧美日性视频 | 视频一区二区国产 | 国产精品一区二区av麻豆 | 国产精品淫片 | 国产福利在线免费 | 91超碰免费在线 | 久久久久国产一区二区三区四区 | aa级黄色大片 | 在线观看韩日电影免费 | 久久手机免费观看 | 四虎在线观看精品视频 | 亚洲一级电影在线观看 | 精品二区视频 | 国产一级片免费播放 | 中文字幕在线观看2018 | 亚洲黄色片一级 | 精品美女国产在线 | 成人免费在线视频 | 日韩视频免费观看高清 | 中文字幕黄色网址 | 又色又爽的网站 | 丝袜美女在线 | 午夜丁香网 | 国产高清精品在线观看 | 日韩中文久久 | 成人免费在线播放 | 国内小视频在线观看 | 99精品视频精品精品视频 | 伊人五月在线 | 亚洲国产精久久久久久久 | www.天天射| 久久婷婷亚洲 | 亚洲黄色免费观看 | 日韩久久精品一区二区 | 久久精品视频在线观看 | 久久99日韩 | 亚洲一区二区三区在线看 | 日本99精品| www四虎影院| 色噜噜色噜噜 | 亚洲成av人影片在线观看 | 久草在线视频首页 | 五月天高清欧美mv | 国产日产高清dvd碟片 | 国产亚洲精品av | 免费www视频 | 在线国产视频 | 亚洲精品黄色在线观看 | 国内视频在线 | 婷婷深爱 | 精品久久久久久久久久久久久久久久久久 | 不卡视频一区二区三区 | 欧美一级片免费观看 | 成年人免费在线播放 | 四虎亚洲精品 | 国产一区二区影院 | 在线日韩中文 | 美女网站黄免费 | 国产一区国产二区在线观看 | 九九九九热精品免费视频点播观看 | 综合久久综合久久 | 国产中文字幕网 | 天天爱天天色 | 蜜臀aⅴ国产精品久久久国产 | 免费在线黄色av | 91亚色视频 | 亚洲精品乱码白浆高清久久久久久 | 天天操狠狠操网站 | 91麻豆操 | 久久综合九色综合欧美狠狠 | 免费在线观看午夜视频 | 日韩a在线 | 久精品视频 | 五月开心激情网 | 国产在线观看 | 日韩在线三级 | 亚洲三级影院 | 日本三级大片 | 综合久久久 | 超碰人人做 | 国外成人在线视频网站 | 国产欧美综合在线观看 | 99久久久久久久久 | 在线视频专区 | 人人狠狠综合久久亚洲婷 | www久久com| 麻豆视频成人 | 成人午夜电影在线播放 | 中文有码在线 | 精品国产1区二区 | 日韩在线观看一区 | 91在线亚洲 | 国产一区自拍视频 | 亚洲人人射 | 在线视频 区 | 天天干天天射天天爽 | 日本动漫做毛片一区二区 | 欧美日韩高清在线一区 | av在线网站大全 | 国产91在线观 | 精品久久免费看 | 国产不卡在线视频 | 五月天婷婷狠狠 | 黄色在线视频网址 | 久久福利影视 | 亚洲精品久久久久中文字幕m男 | 亚洲精品视频偷拍 | 亚洲精品欧美专区 | 狠狠色婷婷丁香六月 | 欧美日韩二三区 | 亚洲精品视频大全 | 日本 在线 视频 中文 有码 | 久久久久欠精品国产毛片国产毛生 | 亚洲综合在线一区二区三区 | 欧美日韩中 | 91在线视频网址 | 97小视频| 免费一级特黄毛大片 | 美女黄色网在线播放 | 五月天,com | 91 在线视频 | 成人久久18免费 | 久久国产精品99久久人人澡 | 五月婷在线观看 | 国产999精品久久久影片官网 | 精品久久一区 | 99久久精品电影 | 日韩大片在线观看 | 99视频黄| 亚洲免费在线播放视频 | 国产一区二区不卡视频 | 五月天网站在线 | 日韩免费在线 | 亚洲一区免费在线 | 四虎小视频 | 国产手机免费视频 | 日韩免费电影一区二区 | 国产精品av久久久久久无 | 在线观看黄色av | 99精品免费网 | 三级av在线| av丝袜制服 | 国产精品麻豆欧美日韩ww | 人人舔人人干 | 97免费| www.久久91| 成人午夜黄色影院 | 国产一二三区av | 91麻豆精品国产91久久久久久 | 我要看黄色一级片 | 黄色av电影网 | 久草视频精品 | 色综合a| 久久视频这里有久久精品视频11 | 在线观看深夜福利 | 色婷婷五 | 五月香婷| 日本激情视频中文字幕 | free,性欧美| 中文字幕免费中文 | 免费在线一区二区 | 日韩va欧美va亚洲va久久 | av在线之家电影网站 | 婷婷丁香七月 | 97超碰在线播放 | 99久久99视频只有精品 | 日色在线视频 | 久草久草在线观看 | 91大神精品视频 | 色综合天天综合 | 91精品国产乱码在线观看 | 狠狠干美女 | 91看片一区二区三区 | 日韩免费电影一区二区 | 色婷婷国产在线 | 免费成人在线观看 | 激情久久综合网 | 丁香六月五月婷婷 | 日本中文在线观看 | 综合久久影院 | 日韩一区二区三区在线观看 | 久久99热这里只有精品 | 99热只有精品在线观看 | 久草综合视频 | 国产在线视频不卡 | 日韩一二三在线 | 1000部国产精品成人观看 | 在线成人av | 国产精品资源在线 | 一区二区三区不卡在线 | 免费91在线观看 | 91亚洲精品国产 | 一级电影免费在线观看 | 亚洲综合在线一区二区三区 | 玖玖视频精品 | 波多野结衣在线视频一区 | 久久国产网 | 国产不卡精品视频 | 日韩大片免费观看 | 天天射天天拍 | 亚洲最大色 | 青青河边草免费直播 | 国产 一区二区三区 在线 | 福利网址在线观看 | 国产精品中文字幕在线观看 | 国产在线小视频 | 一本色道久久综合亚洲二区三区 | www.国产在线 | 国产韩国精品一区二区三区 | 人人看看人人 | 国产免费又粗又猛又爽 | 日本一区二区三区免费观看 | 国产成人三级在线观看 | 91九色丨porny丨丰满6 | 在线播放精品一区二区三区 | 最新av中文字幕 | 成片免费 | 视频99爱 | 成人免费xxx在线观看 | 丝袜美女在线观看 | 九九导航 | 国产黑丝一区二区 | 天天曰| 成人h动漫在线看 | 日本久久久久 | 亚洲人毛片 | 99亚洲视频 | 日韩精品一区二区三区水蜜桃 | 97爱| 最近字幕在线观看第一季 | 伊人影院在线观看 | 超碰免费97| 国产视频一区二区在线 | 亚洲精品一区二区三区高潮 | 江苏妇搡bbbb搡bbbb | 日韩视频一区二区 | 久久99热这里只有精品国产 | 狠狠五月婷婷 | 国产日产精品一区二区三区四区的观看方式 | 午夜少妇 | 日本中文字幕在线电影 | 国产一级二级在线观看 | 成人久久免费 | 激情六月婷婷久久 | 九色精品免费永久在线 | 超碰在线97国产 | 五月天视频网站 | 亚洲精品在线资源 | 韩国av电影网 | 久久 一区 | avhd高清在线谜片 | 少妇自拍av | 五月天网站在线 | 久久精品国产第一区二区三区 | 天天爽夜夜爽人人爽曰av | 一级黄色片网站 | 久草视频99 | 亚洲高清不卡av | 日本中文字幕影院 | 国产精品福利久久久 | 久久久国产精品亚洲一区 | 欧美激情视频在线观看免费 | 99色视频在线 | 91av小视频 | 麻豆精品在线视频 | 日本三级国产 | 97色噜噜| 国产a级免费 | 久久久久亚洲精品成人网小说 | 欧美一级电影片 | 99热都是精品| 国产精品久久久久久久久久新婚 | 亚洲国产精品一区二区尤物区 | 国产成人三级 | 国产精品成人免费 | 午夜国产一区二区三区四区 | 亚洲精品在 | 999国产在线 | 黄色软件网站在线观看 | 亚洲婷婷网 | 国产视频观看 | 亚洲精品字幕在线观看 | 99精品视频精品精品视频 | 国产又粗又猛又爽 | 国产精品三级视频 | 中文字幕在线免费观看 | 国产成人三级 | 亚州精品视频 | www.久久久.cum | 久久久久久久久久网 | 天天夜夜狠狠操 | 一二区精品 | 亚洲精品乱码 | 亚洲精品国内 | 国产免费黄色 | 五月天综合在线 | 手机在线永久免费观看av片 | 久久黄色片 | 五月婷婷在线观看视频 | 色在线最新 | 337p欧美| 成人久久电影 | 成人午夜电影在线播放 | 99久久日韩精品视频免费在线观看 | 激情综合啪| 色噜噜日韩精品一区二区三区视频 | 国产精品1000| 日韩精品极品视频 | 91成人看片 | 国产手机在线播放 | 丁香六月激情婷婷 | 日本精品一区二区 | 亚洲欧美久久 | 成人在线观看资源 | 天天操夜操 | 久久不射影院 | 在线观看网站av | 天天爽夜夜爽人人爽一区二区 | av片中文字幕 | 国产精品久久久网站 | 久草在线官网 | 91传媒在线播放 | 奇米影音四色 | 丝袜美女在线观看 | 一级黄色片在线观看 | 国产99久久久国产精品免费看 | 激情综合网天天干 | 在线有码中文字幕 | 狠狠操夜夜| 天天干,天天插 | 视频在线一区二区三区 | 日韩免费在线播放 | 最新日韩中文字幕 | 国产福利在线免费观看 | 国产美女视频一区 | 中文字幕日韩免费视频 | 伊人开心激情 | 99国产精品视频免费观看一公开 | 精品国产电影 | 国产玖玖精品视频 | 少妇视频一区 | 韩国av免费看 | 人人网人人爽 | 热久久视久久精品18亚洲精品 | 午夜影院一区 | 国产精品免费不卡 | 欧美成a人片在线观看久 | 麻豆视频在线看 | 国产精品久久久久久久久久久杏吧 | 欧美整片sss | 五月香婷| 在线欧美最极品的av | 中文日韩在线 | 久久av黄色 | 在线a亚洲视频播放在线观看 | 人人干人人干人人干 | 免费高清在线观看成人 | 99热官网| 在线观看国产v片 | 九七视频在线观看 | 国产精品九九视频 | 男女男视频 | 日韩精品一区二区三区免费观看视频 | 在线一区电影 | 国产精品自产拍在线观看中文 | 欧美日韩精品久久久 | a黄色影院 | 久久久影视 | 狠狠色噜噜狠狠狠狠 | 在线观看免费成人 | 天天草网站 | www四虎影院 | 爱色av.com | 99c视频高清免费观看 | 亚洲精品一区二区三区新线路 | 免费日韩一区二区三区 | 成人免费网站在线观看 | 最近更新好看的中文字幕 | 国产99在线免费 | 国产精品免费久久久 | 一级片观看 | www.天天成人国产电影 | 激情黄色av | 国产日韩在线一区 | 又黄又刺激视频 | 日本韩国精品一区二区在线观看 | 天天色婷婷 | 久久精品一区二区三区视频 | 国产免费视频一区二区裸体 | 久久婷五月 | 亚洲春色综合另类校园电影 | 亚洲一区二区三区精品在线观看 | 国产福利网站 | 国产精彩视频一区二区 | 成人a在线| 日韩欧美中文 | 不卡av电影在线 | 日韩免费中文字幕 | 国产精品综合在线 | 国产黄色片在线 | 在线免费观看黄色av | 久精品一区 | 欧美极品裸体 | 免费在线观看av不卡 | 色资源在线 | 日韩电影在线一区二区 | 国产三级国产精品国产专区50 | 69xx视频| 久久久久免费视频 | 激情综合网色播五月 | 国产日韩视频在线 | 黄色aa久久 | 日日干综合 | 国产精品成人免费 | 免费网站在线 | 在线看岛国av | 视频高清 | 三级视频片 | 在线亚洲精品 | 91精品国产福利 | 婷婷丁香视频 | 天天草综合网 | av一区在线播放 | 国产91精品在线观看 | 欧美极品一区二区三区 | 国产精品亚洲精品 | 欧美激情综合五月色丁香 | 激情视频久久 | 99在线观看免费视频精品观看 | 国产欧美精品一区二区三区四区 | .国产精品成人自产拍在线观看6 | 亚洲欧美婷婷六月色综合 | 久久99精品久久久久久秒播蜜臀 | 免费看黄在线网站 | 中文高清av| 丁香国产视频 | 婷婷中文字幕在线观看 | 在线精品观看 | 在线视频日韩一区 | 国产精品v a免费视频 | 免费看短 | 一级片免费视频 | 白丝av在线 | 天天干天天射天天插 | 国产一二三四在线观看视频 | 97精品超碰一区二区三区 | 中文字幕日韩免费视频 | 国产一线二线三线在线观看 | 日韩在线观看三区 | 久久精品中文视频 | 99在线视频免费观看 | 最近高清中文在线字幕在线观看 | 日韩专区在线 | 五月婷婷中文 | 一区二区电影在线观看 | 成人av网站在线播放 | 99国产精品 | 久久综合九色欧美综合狠狠 | 中文字幕日韩一区二区三区不卡 | 久久久精品国产一区二区 | 五月激情av| 91av蜜桃| 国产视频97| www.五月天色| mm1313亚洲精品国产 | 日韩av电影中文字幕在线观看 | 中文字幕在线观看日本 | 福利视频一二区 | 天天天综合 | 亚洲综合网站在线观看 | av成人免费在线看 | av综合网址 | 黄色成人91 | 天天草综合| 日日草天天干 | 久久图 | 天天综合成人网 | 色婷婷99 | 国产一级二级三级在线观看 | 午夜精品一二区 | 精品久久久久久亚洲综合网站 | 一区二区三区动漫 | 黄色www免费 | 97国产在线| 最新中文字幕在线资源 | 中文字幕永久在线 | 国产韩国日本高清视频 | 精品伊人久久久 | 超碰在线免费97 | 国产精品免费久久久 | 日本久久久久久久久久久 | 三级黄色在线观看 | 欧美日韩免费观看一区=区三区 | 349k.cc看片app| 日本精品视频在线观看 | www.香蕉 | 色综合网在线 | 欧美一级性 | 99r在线视频| 中文字幕免费一区 | ,午夜性刺激免费看视频 | 天天色天天射天天干 | 欧美日韩国产一二 | 九九热视频在线播放 | 久久国产精品色av免费看 | 最近中文国产在线视频 | 国产精品扒开做爽爽的视频 | 成片免费| 波多野结衣在线观看一区二区三区 | 99色网站| www.国产视频| 国产黄色片在线免费观看 | 久在线观看 | 国产精品九九热 | 久久 在线| 91视频在线免费观看 | 一级a毛片高清视频 | 欧美日韩综合在线观看 | 日日婷婷夜日日天干 | 丁香婷婷久久久综合精品国产 | 99av在线视频| 一区二区精品在线 | 中文字幕在线国产精品 | 日韩在线电影 | 97视频免费在线看 | 日韩欧美综合 | 日韩免费在线观看 | 人人超在线公开视频 | www色| 91尤物在线播放 | 成人xxxx| 日韩精品久久久免费观看夜色 | 亚洲综合色av | 狠狠狠狠狠狠天天爱 | 国产中文字幕第一页 | 欧美特一级片 | 国产一级免费片 | 天天操天 | 正在播放日韩 | 91精品国产综合久久久久久久 | 午夜.dj高清免费观看视频 | 香蕉91视频 | 精品国产网址 | 亚洲黄色成人网 | 精品国产乱码久久久久久天美 | 丁香激情婷婷 | 日本视频不卡 | 激情视频一区二区 | 国产视频精选 | 国产午夜在线观看视频 | av一二三区 | 夜夜夜影院 | 亚洲国产成人高清精品 | 精品av网站 | 亚洲精品9| 国产尤物在线 | 热久久免费视频精品 | 亚洲精品456在线播放 | 精品国精品自拍自在线 | 亚洲精品乱码久久 | 日韩久久精品一区 | 成人网页在线免费观看 | 国产麻豆精品免费视频 | 国产精品一区二区久久精品爱涩 | 日韩在线免费不卡 | 91高清免费在线观看 | 成年人视频在线免费观看 | 五月天综合在线 | 成人黄色片免费 | 波多野结衣电影久久 | 激情婷婷网 | 中文字幕日本电影 | 在线精品一区二区 | 午夜电影久久久 | 色久av | 美女视频黄免费的久久 | av免费电影在线观看 | 婷婷丁香色 | 婷婷色综合色 | 色吊丝在线永久观看最新版本 | 日韩专区av | 欧美大片在线观看一区 | 国产一区二区免费在线观看 | 91一区二区在线 | 亚洲日本在线视频观看 | 欧美精品一区二区免费 | 日本中文字幕在线看 | 啪啪小视频网站 | 国产精品igao视频网网址 | 国产二区免费视频 | 人人澡超碰碰97碰碰碰软件 | 欧美久久久久久久久久 | 视频 国产区| 在线成人欧美 | 黄色国产在线观看 | 欧美成年性| 日本中文在线 | 91精品日韩 | 一区二区三区在线观看免费 | 亚洲区另类春色综合小说 | 激情五月婷婷综合网 | 欧美久久久久久久久久 | 国产免费三级在线观看 | 日韩高清dvd | 亚洲精品一区中文字幕乱码 | 成人黄色片免费 | 精品欧美一区二区精品久久 | 国产一卡久久电影永久 | 日韩av手机在线观看 | 中文字幕在线高清 | 99久久日韩精品免费热麻豆美女 | 美女免费视频一区二区 | 久久这里只有精品9 | 国产乱对白刺激视频在线观看女王 | 国产真实精品久久二三区 | 国产精品高清免费在线观看 | 亚洲精品小视频在线观看 | 天天操欧美 | 特级黄色片免费看 | 中文字幕在线看视频 | 97看片吧| 国产视频中文字幕在线观看 | 日韩午夜在线播放 | 亚洲欧美日韩精品久久久 | a成人在线| 国产分类视频 | 国产99久久久久久免费看 | 日韩免费在线视频观看 | 日本性生活一级片 | 精品影院 | 五月天婷婷综合 | 久久少妇| 日韩激情av在线 | 中文在线中文资源 | 日韩高清在线一区二区 | 91av电影 | 99热在线观看| 在线看av的网址 | 在线成人短视频 | 97电影院网 | 免费观看一区 | 在线观看一 | va视频在线| 国产成人亚洲精品自产在线 | 中文字幕在线久一本久 | www在线观看视频 | 亚洲激情在线观看 | 91麻豆国产福利在线观看 | 91九色自拍 | 日韩三级久久 | 一级国产视频 | 国产网站在线免费观看 | 日韩69av | 免费观看黄色12片一级视频 | 国产黄色片免费 | 国产在线精品一区二区三区 | 国产精品11 | 国产一级在线观看视频 | 狠狠躁日日躁狂躁夜夜躁av | 日韩大片在线看 | 精品亚洲成人 | 99热这里只有精品国产首页 | 天天干天天天 | 丁香六月天婷婷 | 国产精品中文字幕在线观看 | 日韩影视大全 | 久草在线这里只有精品 | 99视频免费 | 精品国产1区| 精精国产xxxx视频在线播放 | 久久久久久高清 | 在线免费观看视频你懂的 | 国产一区成人在线 | 国产日韩欧美在线观看 | 天天摸天天干天天操天天射 | 九九在线视频免费观看 | 亚洲一级理论片 | 四虎影视成人精品国库在线观看 | 国产一区国产二区在线观看 | a视频在线看| 美州a亚洲一视本频v色道 | 国产成人精品a | 香蕉视频亚洲 | 香蕉视频网站在线观看 | 极品久久久久 | 亚洲视频久久 | 久久9精品 | 久久久久免费精品 | 在线观看中文字幕第一页 | 波多野结衣视频一区 | 日韩av成人在线观看 | 特级西西人体444是什么意思 | 91精品在线免费视频 | 99精品在线视频观看 | 五月婷婷欧美 | 最近能播放的中文字幕 | 黄色片免费看 | 2019中文字幕网站 | 天天操夜夜看 | 91网页版在线观看 | 中日韩男男gay无套 日韩精品一区二区三区高清免费 | 欧美一级黄大片 | 国产黄色视 | 亚洲精品三级 | 丰满少妇在线观看网站 | 精品在线观看一区二区三区 | 91麻豆精品一区二区三区 | 国产色爽| 99精品在线视频观看 | 国产精品免费观看网站 | 福利区在线观看 | 国产不卡毛片 | 日韩久久久久久久久 | 在线观看视频亚洲 | 337p日本欧洲亚洲大胆裸体艺术 | 69xxxx欧美| 干亚洲少妇| 毛片3 | 国产又粗又猛又色 | 一级精品视频在线观看宜春院 | 日韩免费视频 | 欧美在线视频一区二区三区 | 99r在线视频| 亚洲一级电影视频 | 国产在线播放不卡 | 免费黄色网址网站 | 久久精品三 | 97精品久久 | 在线综合 亚洲 欧美在线视频 | 日韩网站在线观看 | 国产一级电影免费观看 | 一级性av | 狠狠撸电影 | 丝袜少妇在线 | 精品国产91亚洲一区二区三区www | 国产精品视频内 | 91色蜜桃| 91视频在线免费观看 | 日韩激情影院 | 婷婷干五月 | 日韩欧美在线高清 | 久久99精品国产麻豆宅宅 | 国产高清在线 | 日韩在线播放欧美字幕 | 天天爱天天操天天射 | 超碰久热 | 欧美日韩综合在线观看 | 中文字幕888| 久久女教师 | 精品国产成人 | 精品人人爽 | 日韩视频免费看 | 午夜精品久久久久久99热明星 | 午夜精品导航 | 色 中文字幕 | 国产中文字幕精品 | 亚洲综合小说电影qvod | 在线观看www91 | 国产传媒一区在线 | 一级做a视频 | 十八岁以下禁止观看的1000个网站 | 日本 在线 视频 中文 有码 | 一级片视频免费观看 | 精品久久国产精品 | 久久亚洲欧美日韩精品专区 | 国产精品久久久久久久7电影 | 久久精品永久免费 | 精品天堂av | 天天射天天爱天天干 | 韩日av一区二区 | 国产精品理论片在线播放 | 国产精品毛片久久久久久久久久99999999 | 久久伊人五月天 | 色插综合| 日韩免费在线观看 | 欧美成年人在线视频 | 不卡电影一区二区三区 | 国产糖心vlog在线观看 | 国产精品一区二区三区观看 | 国产精品99久久久久人中文网介绍 | 伊人官网 | 成人黄色电影在线观看 | 欧美射射射 | 999久久国产精品免费观看网站 | 日韩精品免费一区二区三区 | 国产精品自产拍在线观看网站 | 天天操天天射天天舔 | 午夜免费福利片 | 国产高清视频在线播放 | 欧美日韩不卡在线视频 | 少妇精品久久久一区二区免费 | 婷婷久月 | 成人在线视频免费观看 | 国产一区二区三区黄 | 久久精品免费电影 | 天天综合网 天天 | 人人爱人人舔 | 亚洲aaa级 | 99色在线播放 | 国产精品久久久久一区二区国产 | 欧美精品久久人人躁人人爽 | 午夜国产福利在线 | 五月婷婷丁香 | 色97在线 | 欧美色久| 日韩一二区在线观看 | 国产精品2019 | 在线播放日韩av | 激情欧美一区二区三区免费看 | 欧美一区二区视频97 |