CyberChaos(さいばかおす)

プログラミング言語、トランスパイラ、RPA、ChatGPT、データマイニング、リバースエンジニアリングのための忘備録

Autolisp専用のMicro Github Copilot擬きを作ったwww

2023-05-20 02:34:49 | python
Github Copilotのように# コメント文 を入力するだけで目的のAutolispソースコードを生成するAIチャットボットをPythonで作りたい。ソースコードの例を書いて。

ChatGPT
Autolispのソースコードを生成するAIチャットボットの例を以下に示します。この例では、コメント文から簡単
Autolispのソースコードを生成するAIチャットボットの例を以下にまとめます。


def generate_autolisp_code_from_comment(comment):
# 図形タイプの抽出
shape = ""
if "円" in comment:
shape = "円"
elif "四角形" in comment:
shape = "四角形"
else:
return "サポートされていない図形です。"

# ソースコードの生成
if shape == "円":
code = """
(setq pt (getpoint " 中心点を指定してください:"))
(setq radius (getdist " 半径を指定してください:"))

(command "circle" pt radius)
"""
elif shape == "四角形":
code = """
(setq pt1 (getpoint " 第1角の点を指定してください:"))
(setq pt2 (getpoint " 第2角の点を指定してください:"))

(command "rectang" pt1 pt2)
"""
else:
return "サポートされていない図形です。"

return code

# ユーザーのコメントを受け取る
user_comment = input("コメント文を入力してください: ")

# ソースコードの生成と出力
generated_code = generate_autolisp_code_from_comment(user_comment)
print("生成されたAutolispコード: ", generated_code)
この例では、generate_autolisp_code_from_comment関数がコメント文からAutolispの図形描画コードを生成します。関数はコメント文から図形タイプ(円または四角形)を抽出し、それに基づいて新しいソースコードを生成します。生成されたソースコードは文字列として返されます。

メインの処理では、ユーザーにコメント文を入力してもらい、それをgenerate_autolisp_code_from_comment関数に渡して生成されたAutolispコードを取得します。最後に、生成されたコードを出力します。

例えば、ユーザーが「円を描画」というコメントを入力した場合、次のようなAutolispコードが生成されます。

lisp
Copy code
(setq pt (getpoint " 中心点を指定してください:"))
(setq radius (getdist " 半径を指定してください:"))

(command "circle" pt radius)
Autolispでは、getpoint関数を使用してユーザーに点を指定させ、getdist関数を使用してユーザーに半径を指定させています。その後、command関数を使用して円を描画しています。



ChatGPTよ、でかしたぞwww
モノホンのGithub CopilotはガチのAIでトレーニングしていくのだが、こちとら手動でチマチマと機能を追加していく有り様だwww